IPersistence框架
Java手写Mybatis核心功能
介绍
设计思路
使用
引入自定义的框架 jar
编写配置文件
- dbconfig.xml:数据库配置信息,存放 mapper.xml 位置
- mapper.xml:sql 配置信息
框架
- 加载配置文件:以字节流存储在内存中
- 创建 Resources 类:InputStrean getResourceAsStream(String path)
- 创建两个 Bean:容器对象,存放配置文件解析结果
- Configuration:核心配置类,dbconfig.xml 解析结果
- MapperStatement:映射配置类,mapper.xml 解析结果
- 解析配置文件:dom4j
- 创建 SqlSessionFactoryBuilder:build(InputStream in)
- 使用 dom4j 解析配置文件,将结果存放在容器对象
- 创建 SqlSessionFactory 对象:生产 SqlSession 会话对象(工厂模式)
- 创建 SqlSessionFactory 接口及实现类 DefaultSqlSessionFactory
- openSession():生产 sqlSession
- 创建 SqlSession 接口及实现类 DefaultSqlSession
- 定义 crud 操作
- selectList()
- selectOne()
- update()
- delete()
- 创建 Executor 接口及实现类 SimpleExecutor
- query(Configuration, MapperStatement, Object… params):执行 JDBC 代码