zoukankan      html  css  js  c++  java
  • 【Mybatis源码解析】-Configuration

    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对象中所有的熟悉结构

    2、配置文件解析步骤

    整体的流程就是如图,先解析加载配置文件,交给不同的解析器处理,然后返回一个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
  • 相关阅读:
    JSON.stringify深拷贝的缺点
    Vue生命周期和详细的执行过程
    CSS中width:100%和width:auto的区别
    react中的setState的使用和深入理解
    一文看懂Chrome浏览器运行机制
    闭包和垃圾回收机制
    linux 下的文件下载和上传
    mvn install本地安装jar到指定仓库
    内网maven依赖仓库jar报错解决
    hbase源码编译调试
  • 原文地址:https://www.cnblogs.com/simple-flw/p/Mybatis_code_source.html
Copyright © 2011-2022 走看看