Mybatis-核心对象

1)SqlSessionFactoryBuiler
首 先 是 SqlSessionFactoryBuiler 。 它 是 用 来 构 建 SqlSessionFactory 的 , 而
SqlSessionFactory 只需要一个,所以只要构建了这一个 SqlSessionFactory,它的使命
就完成了,也就没有存在的意义了。所以它的生命周期只存在于 方法的局部
2)SqlSessionFactory
SqlSessionFactory 是用来创建 SqlSession 的,每次应用程序访问数据库,都需要
创建一个会话。因为我们一直有创建会话的需要,所以 SqlSessionFactory 应该存在于
应用的整个生命周期中( 作用域是应用作用域 )。创建 SqlSession 只需要一个实例来做
这件事就行了,否则会产生很多的混乱,和浪费资源。所以我们要采用单例模式。
3)SqlSession
SqlSession 是一个会话,因为它不是线程安全的,不能在线程间共享。所以我们在
请求开始的时候创建一个 SqlSession 对象,在请求结束或者说方法执行完毕的时候要及
时关闭它( 一次请求或者操作中 )。
4)Mapper
Mapper(实际上是一个代理对象)是从 SqlSession 中获取的。
BlogMapper mapper = session.getMapper(BlogMapper. class );
它的作用是发送 SQL 来操作数据库的数据。它应该在一个 SqlSession 事务方法之
内。
最后总结如下:
对象
生命周期
SqlSessionFactoryBuiler
方法局部( method
SqlSessionFactory (单例)
应用级别( application
SqlSession
请求和操作( request/method
Mapper
方法( method
这个就是我们在编程式的使用里面看到的四个对象的生命周期的总结
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值