-
生命周期和作用域是十分重要的,错误的使用会导致非常严重的并发问题。
-
Mybatis的执行流程
-
详细讲解
- SqlSessionFactoryBuilder:一旦创建了SqlSessionFactory,就不需要它了,比较适合在局部变量中创建。
- SqlSessionFactory:相当于数据库的连接池;SqlSessionFactory一旦被创建就应该在应用的运行期间一直存在,没有任何理由丢弃它或重新创建另一个实例。
所以SqlSessionFactory比较适合应用作用域,也就是全局;最简单的就是使用单例模式或者静态单例模式。 - SqlSession:连接到连接池的一个请求;用完之后必须要关闭请求;不是线程安全的,不能共享;作用域是请求或者方法作用域。