MyBatis3
文章平均质量分 79
夫礼者
技术的狂热爱好者,时至今日初心不改!<br>简书:https://www.jianshu.com/u/cd3dd432fd00
展开
-
当mybatis-plus-dynamicdatasource遇到@Transactional
当mybatis-plus-dynamicdatasource遇到@Transactional,数据源切换失败时的解决方案原创 2022-01-03 22:44:11 · 1980 阅读 · 0 评论 -
Mybatis源码研究之DatabaseIdProvider
借助Mybatis提供的 databaseId特性,我们可以实现让应用同时支持多种类型的数据库。原创 2021-06-01 23:52:53 · 753 阅读 · 2 评论 -
Mybatis扩展之通用Mapper源码解析
Mybatis通用Mapper组件是最近才开始真正去了解的,其实很早之间就关注了作者的微信公众号和QQ群,但抱着用上再看的原则,所以拖延到了现在。原创 2019-04-03 19:11:40 · 1279 阅读 · 0 评论 -
Mybatis源码研究之@SelectProvider系列注解
在刚接触到Mybatis时候,对于Mybatis提供的接口方式调用Mybatis映射文件感到十分地神奇,本文将尝试解开其神秘面纱。原创 2019-04-04 23:56:23 · 957 阅读 · 0 评论 -
Mybatis源码研究之ErrorContext
ErrorContext借助于ThreadLocal来承载一次执行过程中的所有执行上下文信息,用于发生异常时的排错。这种将执行上下文信息的收集独立出来并集中到一处的做法非常值得借鉴和学习。原创 2018-12-21 23:54:11 · 2562 阅读 · 4 评论 -
Mybatis技巧之LOB对象处理
本文中,我们将细化上一篇文章,以实际的BLOB / CLOB操作再次探究一些TypeHandler的细节。原创 2018-07-09 17:48:52 · 2618 阅读 · 0 评论 -
Mybatis源码研究之TypeHandler
Mybatis在对JDBC整体流程的深刻理解之上,抽取了尽可能多的重复性代码由框架来完成,在此基础上又尽量保证了灵活性。本文将要探讨的TypeHandler就是一个非常好的例子。`TypeHandler`接口定义了对传入参数和返回结果的处理。原创 2018-07-08 22:35:34 · 1051 阅读 · 0 评论 -
Mybatis技巧之附加额外的上下文信息
又一次Plugin的应用原创 2018-06-26 20:37:26 · 1606 阅读 · 1 评论 -
Druid技巧之输出Mybatis的SqlId
自上次的PrepareStatement输出完整SQL语句之后,工作上又接到如本文标题所示的需求。1. 前言提出这个需求的项目现状是: 前期的持久层执行都是使用原始的JDBC完成的,后期切换为Mybatis,所以选择使用Druid来进行SQL日志文件的输出。因此该需求的准确描述是:“如果该语句是Mybatis相关的,就同时打印出SqlId。”2. 分析按照前一篇文章Pre...原创 2018-05-18 18:12:57 · 2807 阅读 · 0 评论 -
Mybatis与Spring集成源码研究之MapperScannerConfigurer
版本为mybatis-spring-1.2.2.jar原创 2017-11-02 22:02:16 · 320 阅读 · 0 评论 -
MyBatis源码研究之$和#
没有什么新奇的东西. $在 TextSqlNode 类中进行了解析. 具体逻辑参见其内部类 BindingTokenParser .在 BindingTokenParser 类中我们可以发现这样的细节:BindingTokenParser 内部有一个injectionFilter字段, 其值就是通过自身的构造函数, 从外部类TextSqlNode 的同名字段中复...原创 2017-09-30 17:19:55 · 1688 阅读 · 0 评论 -
Mybatis源码研究之XMLScriptBuilder
这个XMLScriptBuilder类才是真正在背后解析用来解析mapper文件中的每个<select/>,<insert/>,<update/>,<delete/>节点内的SQL字符串的(其中可能包含动态SQL部分,诸如<if/>,<where/>等)原创 2017-10-19 15:16:23 · 1529 阅读 · 0 评论 -
Mybatis源码研究之BoundSql
Mybatis里难得有注释的类 BoundSql, 而且此注释出现在 3.3.1+ 版本, 在3.2.2时都还没有.BoundSql更像一个中转站, Mybatis在执行一次CRUD操作过程中产生的中间数据的集中点.这一点观察其内部的字段就可以了解.原创 2017-10-27 23:29:51 · 11243 阅读 · 0 评论 -
Mybatis源码研究之SqlSource
Mybatis中少有的有注释的接口原创 2017-10-27 23:39:40 · 6530 阅读 · 1 评论 -
Mybatis源码研究之Logger
MyBatis使用AOP来实现了日志功能.原创 2017-10-28 18:59:06 · 2806 阅读 · 0 评论 -
Mybatis源码研究之DynamicContext
DynamicContext为POJO对象Map化提供了很好的借鉴,抹平了访问POJO和Map对象的差异.原创 2017-10-18 21:19:29 · 2555 阅读 · 0 评论
分享