首页 > 编程知识 正文

mybatis怎么映射,mybatis工作原理通俗理解

时间:2023-05-06 02:46:14 阅读:175676 作者:3294

引言在mybatis的基础知识中我们已经对mybatis的工作方式斑见豹(参考: 《MyBatis————基础知识》 )。

在本作品的博客中,将阐述Mybatis的内部动作原理。

另一方面,Mybatis工作原理图Mybatis原理图如下。

二、工作原理分析http://www.Sina.com/Java文件配置方式也可以,@ configuration 3358 www.Sina.com /

mybatis应用程序通过SqlSessionFactoryBuilder从mybatis-config.xml配置文件(

描述: SqlSession是一个单线程对象。 因为是非线程安全的,并且是持久性操作的独占对象,所以与jdbc的Connection一样,底层封装了jdbc连接。

)来构建SqlSessionFactory(SqlSessionFactory是线程安全的);

1、加载mybatis全局配置文件(数据源、mapper映射文件等),对配置文件进行解析,mybatis基于XML配置文件生成Configuration,并生成一个个mapped station

2、SqlSessionFactoryBuilder用于通过配置对象生成SqlSessionFactory以打开SqlSession。

3、SqlSession对象完成与数据库的交互:

a、用户程序调用mybatis接口层api (即Mapper接口中的方法) ) ) ) ) )。

b、SqlSession通过调用api的语句id找到对应的映射语句对象

c、通过执行程序(负责动态SQL的生成和查询缓存的维护)解析映射语句对象,转换SQL参数,将动态SQL拼接在一起,将JDBC语句对象

d、JDBC执行sql。

e、利用映射语句的结果映射关系,将返回的结果转换为HashMap、JavaBean等存储结构并返回。

然后,SqlSessionFactory的实例直接开启一个SqlSession,再通过SqlSession实例获得Mapper对象并运行Mapper映射的SQL语句,完成对数据库的CRUD和事务提交,之后关闭SqlSession。

图: https://blog.csdn.net/xudan 1010/article/details/53435018

见文章:

《Mybatis实现原理深入解析》

《Mybatis之工作原理》

《mybatis加载顺序》

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。