
Mybatis
yakax
这个作者很懒,什么都没留下…
展开
-
Mybatis3源码分析(6)简单手写思路及面试题
手写基本流程流程定义接口 Mapper 和方法,用来调用数据库操作。Mapper 接口操作数据库需要通过代理类。定义配置类对象 Configuration。定义应用层的 API SqlSession。它有一个 getMapper()方法,我们会从配置类Configuration 里面使用 Proxy.newProxyInatance()拿到一个代理对象MapperProxy。有了代...原创 2020-02-19 20:20:59 · 140 阅读 · 0 评论 -
Mybatis3源码分析(5)spring集成分析与mybatis所用到的设计模式
这里我们以传统的 Spring 为例,因为配置更直观,在 Spring 中使用配置类注解是一样的。在前面文章里面,我基于编程式的工程已经弄清楚了 MyBatis 的工作流程、核心模块和底层原理。编程式的工程,也就是 MyBatis 的原生 API 里面有三个核心对象:SqlSessionFactory、SqlSession、MapperProxy大部分时候我们不会在项目中单独使用 MyBati...原创 2020-02-19 20:18:46 · 176 阅读 · 0 评论 -
Mybatis3源码分析(4)插件分析
源码总结回顾 对象 相关对象 作用 Configuration MapperRegistry TypeAliasRegistry TypeHandlerRegistry 包含了 MyBatis 的所有的配置信息 SqlSession SqlSessionFactoryDe...原创 2020-02-19 20:14:19 · 172 阅读 · 0 评论 -
Mybatis3源码分析(3)流程走向
分析源码我们还是从编程式demo入手我们通过建造者模式创建一个工厂类,配置文件的解析就是在这一步完成的,包括 mybatis-config.xml 和 Mapper 适配器文件。首先进入build进入XMLconfigBuilder–这里就是配置文件创建的地方可以看到这里有很多解析文件的类解析节点–这里可以看出文件只解析了一次。解析文件还是比较简单的,基本上就是读取文...原创 2020-02-19 20:12:33 · 169 阅读 · 0 评论 -
Mybatis3源码分析(2)体系结构与缓存
工作流程分析首先在 MyBatis 启动的时候我们要去解析配置文件,包括全局配置文件和映射器配置文件,这里面包含了我们怎么控制 MyBatis 的行为,和我们要对数据库下达的指令,也就是我们的 SQL 信息。我们会把它们解析成一个 Configuration 对象。接下来就是我们操作数据库的接口,它在应用程序和数据库中间,代表我们跟数据库之间的一次连接:这个就是 SqlSession 对象。...原创 2020-02-19 20:02:28 · 177 阅读 · 0 评论 -
Mybatis3源码分析(1)生命周期与核心配置解读以及批量操作
单独用mybatis编程式进行DB操作--------------------利用mapperString resource = "mybatis-config.xml";InputStream inputStream = Resources.getResourceAsStream(resource);SqlSessionFactory sqlSessionFactory = new Sq...原创 2020-02-19 19:59:42 · 203 阅读 · 0 评论