简述mybatis执行流程
时间: 2023-08-28 18:23:05 浏览: 125
MyBatis的执行流程可以简述为以下几个步骤:
1. 创建SqlSession对象:在使用MyBatis时,首先需要通过SqlSessionFactory创建SqlSession对象,SqlSession是MyBatis的核心对象,它提供了操作数据库的方法。
2. 获取Mapper接口:通过SqlSession的getMapper方法获取Mapper接口的代理对象。Mapper接口定义了访问数据库的方法。
3. 执行SQL语句:通过调用Mapper接口的方法执行SQL语句,MyBatis会根据Mapper接口的方法名和参数,动态生成对应的SQL语句,并将其发送至执行器进行执行。
4. 执行器的选择:MyBatis的执行器根据配置文件中的设置来选择使用的执行器,一共有三个实现子类:SimpleExecutor(简单执行器)、ReuseExecutor(重用执行器)和BatchExecutor(批处理执行器)。
5. 缓存的维护:MyBatis提供了一级缓存和二级缓存来提高性能,执行器会负责缓存的维护。一级缓存是SqlSession级别的缓存,二级缓存是SqlSessionFactory级别的缓存。
6. 返回结果:执行SQL语句后,执行器会将结果封装成Java对象返回给调用者。
综上所述,MyBatis的执行流程包括创建SqlSession对象、获取Mapper接口、执行SQL语句、执行器的选择、缓存的维护和返回结果。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [mybatis 之 执行流程](https://blog.csdn.net/u012391423/article/details/118559651)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [MyBatis-执行流程简介](https://blog.csdn.net/weixin_62427168/article/details/127573281)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文