zoukankan      html  css  js  c++  java
  • Mybatis源码解析

    Mybatis源码解析

    一、mybatis 流程三个阶段

      1、初始化阶段:读取XML 配置文件和注解中的配置信息,创建配置对象,并完成各个模块的初始工作;

      2、代理阶段:封装 IBatis 编程模型,使用 mapper 接口开发的初始化工作;

      3、数据处理阶段:通过 SqlSession 完成SQL解析,参数的映射、SQL的执行、结果的反射解析过程;

    二、简化版 Mybatis 实现思路 

                                  

    1、初始化阶段:读取XML 配置文件和注解中的配置信息,创建配置对象,并完成各个模块的初始工作;

      1、创建 SqlSessionFactory 实例

      2、实例化过程中加载配置文件创建 Configuration 对象

      3、通过 factory 创建 SqlSession 

    2、代理阶段:封装 IBatis 编程模型,使用 mapper 接口开发的初始化工作;

      4、通过 Sql Session 获取 mapper 结果动态代理

      5、动态代理回调 sqlsession 某个具体方法

      6、Sql Session 将执行方法转发给 Executor

    3、数据处理阶段:通过 SqlSession 完成SQL解析,参数的映射、SQL的执行、结果的反射解析过程;

      7、Executor 基于 jdbc 访问数据库获取数据

      8、Executor 通过反射将数据转成 pojo 返回给 Sql Session

      9、将数据返回给调用者;

       

    https://www.cnblogs.com/dongying/p/4142476.html

  • 相关阅读:
    图像滤波
    直方图histeq
    直方图
    基于灰度变换的图像增强
    图像增强
    图像旋转和缩放
    图像点运算
    像素的连接与联通
    程序员进阶之算法练习(一)
    RxSwift 系列(二)
  • 原文地址:https://www.cnblogs.com/Jomini/p/13723828.html
Copyright © 2011-2022 走看看