天天看點

Mybatis源碼學習

Mybatis源碼

最近開始學習 mybatis 源碼,本地搭建了閱讀倉庫,想省勁的直接下載下傳就可以

倉庫位址

先了解一下mybatis 的大緻加載流程:

  1. 加載配置檔案
  2. 解析xml,并建立

    Configuration

    對象,對象裡面包含了

    <configuration></configuration>

    标簽裡面(即mybatis)的所有配置
  3. 使用

    configuration

    建立

    SqlSessionFactory

    對象(實際是

    DefaultSqlSessionFactory

    對象,它是

    Mybatis

    SqlSessionFactory

    接口的預設實作,

    SqlSessionFactory

    重載了多個擷取

    SqlSession

    的工廠方法)
    Mybatis源碼學習
  4. 通過

    sqlSession

    擷取自己寫的

    mapper

    執行個體,并調用自己編寫的

    mapper

    接口中的curd方法

再了解一下Mybatis體系中重要的類:

  1. SqlSession

    SqlSession

    可以了解為對資料庫的一次或多次操作,類似于 JDBC中

    Connection

    對象的

    SqlSession

    對象,它在 Mybatis的體系中 是一個非常重要的類,包含了所有執行語句,送出或復原事務,還有擷取映射器執行個體的方法
  2. SqlSessionFactory

    SqlSessionFactory

    SqlSession

    的對象工廠,它是由

    SqlSessionFactoryBuilder

    解析xml配置檔案而建立出來的