Mybatis简介
持久层ORM框架,执行sql比较简单,扩展性强,与传统jdbc相比,省去了手写连接的几个步骤,可以通过配置。 节约数据库连接资源,代码易于维护。
mybatis 在SqlMapConfig.xml 中配置数据库连接池,用于管理数据库连接
采用xxmapper.xml文件与java代码分离,易于维护
传参方便,使用占位符 #{} 传参,一一对应
映射结果为Map或者对象使用方便
Mybatis整体体系图
分为3层,接口层,数据处理层,基础支持层
执行sql的简单示例分为以下几步:
1. 从配置文件获取sqlsessionFactory
2. sqlsessionFactory 获取 sqlsession
3. sqlsession 进行crud 和事务操作
4. 执行相关操作以及关闭session
源码解析流程图
总结:
对应mybatis启动流程(获取sqlsession的过程)这边简单如下:
sqlsessionFactoryBuilder解析配置文件,包括属性配置,别名配置,拦截器配置,环境(数据源和事务管理器),mapper管理器,解析完这些配置会生成一个configuration对象,包含mybatis 需要解析的所有配置,创建sqlsessionfactory对象,包含这些配置。