您的位置:首页 > 其它

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

2017-02-17 19:41 260 查看
本文是读 杨开振老师的《深入浅出 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。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息