Mybatis入门
什么是mybatis
mybatis官网定义
mybatis是一个优秀的持久层框架,它支持自定义SQL、存储过程和高级映射。mybatis免除了所有JDBC代码以及设置参数和获取结果集的工作。mybatis可以通过简单的xml配置或注解来配置和映射原始类型、接口和java POJO为数据库中的对象。
mybatis加载流程
-
读取mybatis的配置文件流当入参
-
把配置流对象解析成Configuration对象,并返回一个SqlSessionFactory对象
-
SqlSessionFactory.openSession创建一个sqlSession
-
sqlSession可以调用增、删、查、改的方法
-
根据sql的statementId去Configuration的查出对应执行的sql语句
-
封装成ResultMap返回
- sqlSessionFactory.build(inputStream):
- XmlConfigBuilder.parse():
- XmlConfigBuilder.parseConfiguration()
- sqlSessionFactory.openSession()
- sqlSession.selectOne()
- DefaultSqlSession.selectList()
- configuration.getMappedStatement()
- DefaultSqlSession.selectList()
- sqlSession.selectOne()
- sqlSessionFactory.openSession()
- XmlConfigBuilder.parseConfiguration()
- XmlConfigBuilder.parse():