一些收藏

MyBatis原理(一)——概述

2021-11-30  本文已影响0人  Lnstark

此系列为鲁班大叔的MyBatis源码的学习总结。
我调试的MyBatis版本为3.5.7

一、JDBC执行过程

先回顾一下JDBC执行过程:

/** 第一步: 获取连接 */
Connection connection = DriverManager.getConnection(JDBC.URL, JDBC.USERNAME, JDBC.PASSWORD);
/** 第二步: 预编译SQL */
PreparedStatement statement = connection.prepareStatement("select * from  users ");
/** 第三步: 执行查询 */
ResultSet resultSet = statement.executeQuery();
/** 第四步: 读取结果 */
readResultSet(resultSet);

分为获取连接、预编译SQL,执行查询和读取结果4步。

二、mybatis执行过程

三、MyBatis核心组件

执行器的核心功能包括:缓存维护、事务操作,query和update操作,具体的SQL语句操作交给StatementHandler来处理。

为用户提供增删改查、事务的提交以及会话关闭等功能。它里面包含一个执行器,所有的操作都交给执行器处理。

InvocationHandler实现类,MapperProxyFactory通过JDK动态代理生成Mapper的实现类。

参考资料

B站——MyBatis源码解析大合集
源码阅读网

上一篇下一篇

猜你喜欢

热点阅读