SqlSession的使用范围
?
?
SqlSession的使用范圍
SqlSession中封裝了對數據庫的操作,如:查詢、插入、更新、刪除等。
SqlSession通過SqlSessionFactory創建。
SqlSessionFactory是通過SqlSessionFactoryBuilder進行創建。
?
SqlSessionFactoryBuilder
SqlSessionFactoryBuilder用于創建SqlSessionFacoty,SqlSessionFacoty一旦創建完成就不需要SqlSessionFactoryBuilder了,因為SqlSession是通過SqlSessionFactory創建的。所以可以將SqlSessionFactoryBuilder當成一個工具類使用,最佳使用范圍是方法范圍即方法體內局部變量。
SqlSessionFactory
SqlSessionFactory是一個接口,接口中定義了openSession的不同重載方法,SqlSessionFactory的最佳使用范圍是整個應用運行期間,一旦創建后可以重復使用,通常以單例模式管理SqlSessionFactory。
SqlSession
SqlSession是一個面向用戶的接口,sqlSession中定義了數據庫操作方法。
?????? 每個線程都應該有它自己的SqlSession實例。SqlSession的實例不能共享使用,它也是線程不安全的。因此最佳的范圍是請求或方法范圍。絕對不能將SqlSession實例的引用放在一個類的靜態字段或實例字段中。
打開一個 SqlSession;使用完畢就要關閉它。通常把這個關閉操作放到 finally 塊中以確保每次都能執行關閉。如下:
SqlSession session = sqlSessionFactory.openSession(); try {// do work } finally {session.close(); }?
總結
以上是生活随笔為你收集整理的SqlSession的使用范围的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: xls文件二进制格式
- 下一篇: 开源微内核seL4