生命週期和作用域 mybatis執行流程

2022-10-09 23:36:27 字數 774 閱讀 9821

流程

sqlsessionfactory 例項化後  --> transactional事務管理-->建立executor執行器-->建立sqlsession-->實現增刪改查(失敗則回到事務,成功提交事務)

sqlsessionfactorybuilder(工廠的創造者)

***這個類可以被例項化、使用和丟棄,一旦建立了 sqlsessionfactory,就不再需要它了

***區域性方法變數

sqlsessionfactory(工廠)

*******可以想象成資料庫連線池**********

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

***使用單例模式或者靜態單例模式

**********連線到連線池的乙個請求****需要開啟和關閉******************

***每個執行緒都應該有它自己的 sqlsession 例項

***每次收到 http 請求,就可以開啟乙個 sqlsession,返回乙個響應後,就關閉它

不同作用域內 同乙個靜態sqlsessionfactory通過sqlsessionfactory.opensession()方法建立出不同的sqlsession

Mybatis作用域和生命週期

理解作用域和生命週期類非常重要,如果使用不當,會造成各種各樣的問題 這個類可以被初始 使用和丟棄,如果你已經建立好了乙個 sqlsessionfactory 後就不用再保留它。因此,sqlsessionfactorybuilder 的最好作用域是方法體內,比如說定義乙個方法變數。你可以重複使用sql...

MyBatis之作用域和生命週期(二)

對於這些概念性的東西,總怕自己說不清楚,害怕害了看了我部落格的人,所以抄書,哈哈.理解作用域和生命週期類非常重要,如果使用不當,會造成各種各樣的問題。1 sqlsessionfactorybuildesqlsessionfactorybuilder plain view plain copy pri...

作用域和生命週期

1.作用域 可見性 作用域 可見性 指識別符號能夠被使用的範圍 只有在作用域內識別符號才可以被使用。此階段針對編譯和鏈結過程 1 函式中定義的識別符號,包括形參和函式體中定義的區域性變數,作用域都在該函式內,也稱作函式域。2 檔案作用域也稱全域性作用域。定義在所有函式之外的識別符號,具有檔案作用域,...