1. 程式人生 > 實用技巧 >9、生命週期和作用域

9、生命週期和作用域

生命週期,和作用域,是至關重要的,因為錯誤的使用會導致非常嚴重的**併發問題**

**SqlSessionFactoryBuilder:**

-一旦建立了 SqlSessionFactory,就不再需要它了

-區域性變數

**SqlSessionFactory:**

-說白了就是可以想象為 :資料庫連線池

-SqlSessionFactory 一旦被建立就應該在應用的執行期間一直存在,**沒有任何理由丟棄它或重新建立另一個例項。**

-因此 SqlSessionFactory 的最佳作用域是應用作用域。

-最簡單的就是使用**單例模式**或者靜態單例模式。

全域性變數,程式結束它才結束

**SqlSession**

-連線到連線池的一個請求!

-SqlSession 的例項不是執行緒安全的,因此是不能被共享的,所以它的最佳的作用域是請求或方法作用域。

-用完之後需要趕緊關閉,否則資源被佔用!

這裡面的每一個Mapper,就代表一個具體的業務!