MyBatis 的核心功能入口为 SqlSession,它包含了面向数据库执行 SQL 命令所需的所有方法。要想获取 SQLSession 就需要构建 SqlSessionFactory,SqlSessionFactory 由 SqlSessionFactoryBuilder 构建,而 SqlSessionFactoryBuilder 的创建需要读入 Configuration 的所有配置。获取到 SqlSession 之后,我们可以通过 SqlSession 获取 Mapper,接着可以调用想要执行的 SQL 语句(对应 Mapper 接口中的方法或 Java 注解)来执行数据库操作而不用关心连接的建立、关闭等底层操作。最后 MyBatis 会自动映射数据库返回的结果集到我们想要的类型。至此,即完成一次完整的操作。
在进入源码阅读前,我们先从整体上来认识一下 MyBatis 的源码组成。每个功能模块对应源码的各个包,从 SqlSession 作为入口,包含上层的执行器、参数和结果集映射、插件、SQL 解析等以及底层的数据源模块、事务管理模块、缓存、日志、类型转换等功能模块。
Mybatis源码分析一
最新推荐文章于 2022-01-17 10:06:38 发布