Mybatis其他配置!

4.6、其他配置(20-12-18)

4.7、映射器(mapper)

MapperRegistry:注册绑定我们的Mapper文件;

方式一:【推荐使用】

<mappers>
	<mapper resource="com/kuang/dao/UserMapper.xml" />
</mappers>

方式二:使用class文件绑定注册

<mappers>
	<mapper class="com.kuang.dao.UserMapper" />
</mappers>

注意点:

  • 接口和他的Mapper配置文件必须同名!
  • 接口和他的Mapper配置文件必须在同一个包下!

方式三:使用扫描包进行注册绑定

<mappers>
	<package name="com.kuang.dao" />
</mappers>

注意点:

  • 接口和他的Mapper配置文件必须同名!
  • 接口和他的Mapper配置文件必须在同一个包下!

4.8、生命周期和作用域

作用域,和生命周期,是至关重要的,因为错误的使用会导致非常严重的并发问题

SqlSessionFactoryBuilder

  • 一旦创建了SqlSessionFactory,就不再需要他了
  • 局部变量

SqlSessionFactory

  • 说白了就是可以想象为:数据库连接池
  • SqlSessionFactory一旦被创建就应该在应用的运行期间一直存在,没有任何理由丢弃它或重新创建另一个实例
  • 因此 SqlSessionFactory 的最佳作用域是应用作用域。
  • 最简单的就是使用单例模式或者静态单例模式。

SqlSession

  • 连接到连接池的一个请求!
  • SqlSession 的实例不是线程安全的,因此是不能被共享的,所以它的最佳的作用域是请求或方法作用域。
  • 用完后需要赶紧关闭,否则资源被占用!
本人学习Java的一片私人空间……
原文地址:https://www.cnblogs.com/none-space/p/14157410.html