专栏名称: Java团长
专注Java相关技术:SSM、Spring全家桶、微服务、MySQL、MyCat、集群、分布式、中间件、Linux、网络、多线程,偶尔讲点运维Jenkins、Nexus、Docker、ELK,偶尔分享些技术干货,致力于Java全栈开发!
今天看啥  ›  专栏  ›  Java团长

被面试官问烂了的 MyBatis 原理你真的了解吗?

Java团长  · 公众号  · Java  · 2020-02-05 14:36

文章预览

废话不多说,直接进入文章。 我们在使用MyBatis的时候,会在xml中编写sql语句。如图: 那么,MyBatis底层是如何构造sql,写了接口为啥就能执行sql? 下面带着这个疑问我们一步步分析。 梳理MyBatis的设计思路 创建SqlSessionFactory实例 实例化过程中,加载配置文件创建configuration对象 通过factory创建SqlSession 通过SqlSession获取mapper接口动态代理 动态代理回调sqlsession中某查询方法 SqlSession将查询方法转发给Executor Executor基于JDBC访问数据库获取数据 Executor通过反射将数据转换成POJO并返回;给SqlSession 将数据返回给调用者 MyBatis三大核心阶段 初始化阶段:读取XML配置文件和注解中的配置信息,创建解析对象,并完成各个模块的初始化工作。就是把我们的配置文件加载到内存里面去。 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览