Mybatis技术原理与实践——读书笔记(二)

本文是读 杨开振老师的《深入浅出 Mybatis技术原理与实践》第二章所记录的笔记,本文绝对没有推荐书的意思,只是看着记录学习,同时分享自己的观点而已。

 

mybatis 核心组件

1)SqlSessionFactoryBuilder:构造器,他会根据配置信息或者代码生成 SqlSessionFactory

2)SqlSessionFactory:依靠工厂来生成 SqlSession

3)SqlSession:是一个既可以发送SQL去执行并且返回结果,也可以获取Mapper接口

4)SQL Mapper:由一个Java接口和XML文件(或注解)构成,需要给出对应的SQL和映射规则,其负责发送SQL执行并且返回映射结果。

 

 

核心组件生命周期

1)SqlSessionFactoryBuilder:利用、解析xml构造 SqlSessionFactory,因为这整个系统我们只需要一个SqlSessionFactory ,所以,只要项目初始化的时候构造出了 SqlSessionFactory,那么 SqlSessionFactoryBuilder就失去了价值,所以可以定义为一个局部变量。

 

2)SqlSessionFactory,他的主要作用是构造SqlSession,因为SqlSession就像是JDBC的Connection,那么很多时候都需要它来创建,但是由于不同的SqlSessionFactory创建出的SqlSession会不好管理,所以系统中只需要一个SqlSessionFactory,这样他就可以通过数据库连接池清晰配置管理了,所以SqlSessionFactory在系统中应该是单例的。

 

3)SqlSession,类似于JDBC的Connection,所以他应该是在处理事务的过程中,从事务的开启到事务的提交或回滚。因为数据库连接资源的重要性,所以每次使用SqlSession都必须关闭资源。

 

4)Mapper,很明显他是在SqlSession处理业务时被使用,所以他的生命周期应该等同于SqlSession。

 

 

 

 

 

转载于:https://my.oschina.net/heweipo/blog/841119

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值