工作流程
- 加载mybatis-config.xml文件,根据其中的配置生成Configuration对象
- 根据SqlSessionFactoryBuild生成SqlSessionFactory,根据SqlSessionFactory获得SqlSession
- 根据SqlSession获得Executor执行器
- Executor执行相应的quert、insert等方法的内部,还会获取不同的StatementHandler,来负责映射参数的传入与输出
架构分层
接口层
就是sqlSession,接口的职责就是负责与程序交互
核心层
主要流程都是核心层完成的,如下:
- 把接口层中传入的参数解析成JDBC类型
- 解析xml中的sql,包括sql的参数与动态sql的生成
- 执行sql
- 处理结果集,映射成java对象
基础支持层
实现一些通用的功能,比如缓存、日志、事务等