MyBatis 底层原理

来源:互联网 发布:淘宝客服节假日放假吗 编辑:程序博客网 时间:2024/05/17 23:55

        MyBatis底层就是JDBC   所以他的核心就是配置文件  :

          1:全局配置文件 (配置数据源 事务运行时信息)

      2:映射文件(执行statement的相关信息,包括SQL语句,输入参数,输出结果)

      MyBatis把全局配置文件加载到内容中 构建出SqlSessionFactory    ,这个工厂的作用相当于生产对象  生产    SqlSession   

     SqlSession   :它是一个面向程序员的接口,可以操作数据库。 接口有一个默认实现DefaultSqlSession。

SqlSession   中有一个executor 执行器。  SqlSession   本身不能操作数据库 需要通过这个执行器去操作。有2个实现 一个叫做基本执行器,还有一个缓存执行器(默认)。

    MappedStatement:封装了执行Statement信息,包括SQL语句 输入参数,输出结果。由它去操作数据库。

输入输出参数类型: 

            1:基本类型

            2:自定义类型

            3:hashmap


根据源码:看到Sqlsession内部并不能直接操作数据库。而是利用内部的一个执行器去操作数据库。执行器执行的时候会去执行MappedStatement   到最后才去真正执行数据库。



   

   

0 0