MybatisPlus启动注入 SQL 原理分析

MybatisPlus 启动注入 SQL 原理分析(尚硅谷视频笔记)

(1): xxxMapper 继承了 BaseMapper, BaseMapper 中提供了通用的 CRUD 方法, 方法来源于 BaseMapper, 有方法就必须有 SQL, 因为 MyBatis 最终还是需要通过 SQL 语句操作数据

(2)MapperProxy 中 sqlSession –>SqlSessionFactory

(3)SqlSessionFacotry 中 → Configuration→ MappedStatements 每一个 mappedStatement 都表示 Mapper 接口中的一个方法与 Mapper 映射文件 中的一个 SQL。

MP 在启动就会挨个分析 xxxMapper 中的方法,并且将对应的 SQL 语句处理好,保 存到 configuration 对象中的 mappedStatements 中

(4)几个相关的对象

  • Configuration: MyBatis 或者 MP 全局配置对象

  • MappedStatement:一个 MappedStatement 对象对应 Mapper 配置文件中的一个 select/update/insert/delete 节点,主要描述的是一条 SQL 语句

  • SqlMethod : 枚举对象 ,MP 支持的 SQL 方法 TableInfo:数据库表反射信息 ,可以获取到数据库表相关的信息

  • SqlSource: SQL 语句处理对象

  • MapperBuilderAssistant: 用于缓存、SQL 参数、查询方剂结果集处理等. 通过 MapperBuilderAssistant 将每一个 mappedStatement 添加到 configuration 中的 mappedstatements 中

你可能感兴趣的:(mybatisPlus,mybatis)