Mybatis源码解析-Configuration

​ 关于Mybatis的配置信息,都是解析在Configuration对象中,找个对象在Mybatis中核心的一个类

下面一段就是使用mybati的代码

// 获取构建器
    SqlSessionFactoryBuilder factoryBuilder = new SqlSessionFactoryBuilder();
    // 解析XML 并构造会话工厂
    factory = factoryBuilder.build(ExecutorTest.class.getResourceAsStream("/mybatis-config.xml"));
    SqlSession sqlSession = factory.openSession();
    UserMapper mapper = sqlSession.getMapper(UserMapper.class);
    User user = mapper.selectByid(1);
    System.out.println("user = " + user);

一、configuration的整体配置体系

configuration的整体配置体系如图所示:

每个配置模块都有对于的解析类,在初始化的时候进行配置解析。下图画出了configuration对象中所有的熟悉结构
【Mybatis源码解析】-Configuration

2、配置文件解析步骤

整体的流程就是如图,先解析加载配置文件,交给不同的解析器处理,然后返回一个configuration对象。

【Mybatis源码解析】-Configuration

每个模块的配置解析对应的类,做了个表格,方便理解。

说明 文件 解析器 对象
主配置文件 mybatis-config.xml XMLConfigBuilder Configuration
映射文件 UserMapper.xml(示例) XMLMapperBuilder ParameterMap..
Statement元素 <select|insert|update|delete/> XMLStatementBuilder MappedStatement
动态Sql运算元素 <if|foreach/> XMLScriptBuilder BoundSql
注解元素 @Select @update MapperAnnotationBuilder MappedStatement

相关文章:

  • 2021-10-23
  • 2021-09-15
  • 2022-12-23
  • 2021-12-15
  • 2021-07-22
  • 2018-05-07
  • 2022-01-17
猜你喜欢
  • 2022-12-23
  • 2021-12-28
  • 2022-01-26
  • 2021-07-10
  • 2019-11-17
  • 2020-11-15
  • 2021-10-08
相关资源
相似解决方案