MyBatis 核心对象

核心对象

一、核心接口和类
  • 每个MyBatis的应用程序都以一个SqlSessionFactory对象的实例为核心。
  • 首先获取SqlSessionFactoryBuilder对象,根据xml文件或Configuration类的实例构建该对象。
  • 获取SqlSessionFactory对象,通过SqlSessionFactoryBuilder对象获取。
  • 通过SqlSessionFactory获取SqlSession实例,此实例完全包含以数据库为背景的所有执行SQL操作方法。
1. SqlSessionFactoryBuilder对象

作用:负责构建SqlSessionFactory,并且提供了多个build()方法的重载

生命周期和作用域:最大的特点为用过即丢,一旦创建了SqlSessionFactory对象之后,这个类就不再需要了。最佳范围存在于方法体内,也就是个局部变量而已。

2. SqlSessionFactory对象

作用:可以通过此对象的OpenSession()方法获得SqlSession()实例。

生命周期和作用域:对象一旦创建,在整个应用运行过程中始终存在。最佳的作用域范围是Application,随着应用的生命周期一同存在。

3. SqlSession对象

作用:用于持久化操作的对象,类似于JDBC中的connection,提供了面向数据库执行SQL命令所需的所有方法.

生命周期和作用域:对应着一次数据库会话,若关闭的SqlSession会话,就需要重新创建它。

注意:每个线程都有自己的SqlSession实例,所以不能被共享,是线程非安全的,最佳作用域范围是request作用域或者方法体作用域。

使用方式:

  1. 直接执行已映射的Sql语句,例如:直接调用selectList方法执行查询。
  2. 基于mapper接口方式操作数据。例子:Sqlsession.getMapper(接口名.class).执行的方法(参数);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值