深入Mybatis(一)之运行原理
写在前面
用过mybatis的开发者都知道,要想使用mybatis,可以分为以下几步:
1.引入Mybatis的依赖
2. 配置mybatis核心配置文件(sqlMapConfig.xml)
3. 创建SqlSessionFactoryBulider
4. 创建SqlSessionFactory
5. 创建SqlSession
6. 开发Mybatis应用
如果交给Spring容器来管理,将极大简化代码,但是,在使用简单,又灵活的背后,Mybatis的开发者帮我们做了很多事情,为什么要了深入mybatis的工作原理,因为里面的设计模式和核心思想还有Mybatis如何工作都值得我们学习.本人第一次尝试解读源码,有不足之处,请大家指正,谢谢
MyBatis的核心
我认为要运行Mybatis程序,可抽象成以下两部分 .
1.Configuration类:
由org.apache.ibatis.builder.xml.XMLConfigBuilder解析SqlMapConfig.xml中配置信息
然后将配置信息读入org.apache.ibatis.session.Configuration
Configuration类主要存储了MybatisMybtais的一些配置信息,用来创建后续的SessionFactoryBulider
2.sqlSeesion执行:
用sqlSessionFactory创建的sqlSession已经具备了操纵和持久化数据库的能力,
sqlsession根据用户写的sql语句,和配置的annotation,或者Mapper.xml文件来执行相应的操作
总结
有了以上两大类加载配置,和执行,MyBatis就能运行在我们的项目中了,接下来,将详细介绍MyBatis的工作原理