mybatis学习笔记整理--mybatis的基本组成

mybatis的基本组成

1、SqlSessionFactoryBuilder

SqlSessionFactoryBuilder根据配置信息生成SqlSessionFactory。可以说它的作用就是一个构建器,一旦构建了SqlSessionFactory,它的作用就已经完结,失去了存在的意义。此时我们就应该废弃它,回收它,所以它的生命周期只存在于方法周期。

2、SqlSessionFactory

SqlSessionFactory生成SqlSession。SqlSessionFactory存在于mybatis整个生命周期。如果对同一数据库创建多个SqlSessionFactory,那么连接资源很快耗尽,也不利于代码的统一管理。SqlSessionFactory职责只是生成SqlSession,正确做法是每个数据库只对应一个SqlSessionFactory,管理好数据库资源的分配,避免过多Connection被消耗掉。

3、SqlSession

SqlSession用于发送sql并获取返回结果,或获取Mapper接口。一个SqlSession相当于jdbc的一个Connection对象,生命周期应当在请求数据库处理事务的过程中。它是个线程不安全对象,所以操作数据库需要注意隔离级别,数据库锁等高级特性。SqlSession都必须及时关闭,长期存在会使数据库连接池活动资源减少,对系统性能影响很大

4、Mapper

Mapper由Java接口和XML文件构成。定义sql和映射规则。它的生命周期应该在SqlSession事务方法之内,是一个方法级别的东西。

5、Configuration

配置数据库信息的xml文件保存到Configuration类对象中,这个对象存在于整个mybatis应用生命周期中。

小结:SqlSessionFactoryBuilde读取xml配置文件,创建SqlSessionFactory,对于数据库的请求SqlSessionFactory生成并分配SqlSession,通过持有SqlSession向数据库发送sql请求,而sql的定义和pojo和数据库表的映射由Mapper处理。

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值