作用域和生命周期2023-11-11 12:45:22作用域和生命周期是至关重要的,因为错误的使用会导致非常严重的并发问题。 1.SqlSessionFactoryBuilder 这个类主要用于创建SqlSessionFactory,创建完SqlSessionFactory后,SqlSessionFactoryBuilder就没有用处了,可以被丢弃。所以SqlSessionFactoryBuilder最好的作用域是局部方法变量 2.SqlSessionFactory 这个类主要创建SqlSession,SqlSessionFactory的存在与否对SqlSession非常重要,SqlSessionFactory就好像一个水池,而SqlSession就像水池下面的一个阀门,想要用SqlSessionFactory里面的资源,阀门打开就好,不用了就要关闭阀门(SqlSession),防止资源浪费。 所以SqlSessionFactory在一次服务中要时刻存在,为了迎接SqlSession的调用。SqlSessionFactory的最佳作用域是应用作用域,最简单的就是使用单例模式或者静态单例模式创建它。 注意不要多次创建SqlSessionFactory 3.SqlSession 每个线程都应该有它自己的 SqlSession 实例。SqlSession 的实例不是线程安全的,因此是不能被共享的,所以它的最佳的作用域是请求或方法作用域。用完后就要立即关闭它,防止资源浪费 上一篇:2. SqlSessionFactoryBuilder、sqlSessionFactory、SqlSession类的说明下一篇:创建sqlsession工具类