MyBatis-核心Api

SqlSessionFactoryBuilder

  • SqlSessionFactoryBuilder 用于创建 SqlSessionFacoty
  • SqlSessionFacoty 一旦创建完成就不需要 SqlSessionFactoryBuilder 了。
  • 因为 SqlSession 是通过 SqlSessionFactory 创建的。
  • 所以可以将 SqlSessionFactoryBuilder 当成一个工具类来进行使用,最佳使用范围是 方法范围方法体内的局部变量

SqlSessionFactory

  • 创建 sqlSession 的工厂,是一个接口。
  • 接口中定义了 openSession 的不同重载方法。
  • SqlSessionFactory 的最佳使用范围是 整个应用运行期间,一旦创建后可以重复使用,通常以单例模式管理 SqlSessionFactory

SqlSession

  • 连接到数据库的一个会话。
  • sqlSession 中定义了数据库的一些操作方法。
  • 每个线程都应该有它自己的 SqlSession 实例。
  • SqlSession 的实例不能共享使用,它也是线程不安全的。因此最佳的使用范围是 请求方法范围
  • 绝对不能将 SqlSession 实例的引用放在一个类的静态字段或实例字段中。

MyBatis 的整体架构

posted @ 2021-02-05 09:13  BNTang  阅读(129)  评论(0编辑  收藏  举报