随笔分类 -  mybatis

摘要:官方文档:https://mybatis.plus/ 官方样例地址:https://gitee.com/baomidou/mybatis-plus-samples 零、MybatisPlus特性: 无侵入,损耗小,强大的CRUD操作。 支持Lambda形式调用,支持多种数据库。 支持主键自动生成,支 阅读全文
posted @ 2020-10-26 14:03 天乔巴夏丶 阅读(2612) 评论(0) 推荐(1)
摘要:有时我们希望在更新数据的时候,自动完成某些字段的值的填充,如创建一个实体的时候,自动生成创建时间,更新的时候自动改变更新时间等。 在指定字段标注注解,生成器策略部分也可以配置。 // 创建时间 @TableField(fill = FieldFill.INSERT) private Date cre 阅读全文
posted @ 2020-10-26 14:02 天乔巴夏丶 阅读(1938) 评论(0) 推荐(0)
摘要:本文代码样例均已上传至Gitee:https://gitee.com/tqbx/springboot-samples-learn/tree/master/spring-boot-mybatis-plus-primer 乐观锁适用于读多写少的场景。 乐观锁的实现机制: 取出记录时,获取当前versio 阅读全文
posted @ 2020-10-26 13:50 天乔巴夏丶 阅读(1306) 评论(1) 推荐(0)
摘要:本文代码样例均已上传至Gitee:https://gitee.com/tqbx/springboot-samples-learn/tree/master/spring-boot-mybatis-plus-primer 核心插件: TenantLineInnerInterceptor 核心处理器:Te 阅读全文
posted @ 2020-10-26 13:46 天乔巴夏丶 阅读(5829) 评论(0) 推荐(0)
摘要:本文代码样例均已上传至Gitee:https://gitee.com/tqbx/springboot-samples-learn 基本使用 创建方法的类,继承AbstractMethod。 /** * * 删除全部 * @author Summerday */ public class Delete 阅读全文
posted @ 2020-10-26 13:40 天乔巴夏丶 阅读(3087) 评论(0) 推荐(0)
摘要:本文代码样例均已上传至Gitee:https://gitee.com/tqbx/springboot-samples-learn 只对自动注入的sql起效: 插入: 不作限制 查找: 追加where条件过滤掉已删除数据,且使用 wrapper.entity 生成的where条件会忽略该字段 更新: 阅读全文
posted @ 2020-10-25 20:11 天乔巴夏丶 阅读(7979) 评论(3) 推荐(2)
摘要:注:本文代码样例及sql脚本均已上传至gitee:spring-boot-mybatis-plus学习 Mybatis支持的主键策略 MybatisPlus支持的主键策略定义在IdType中: 值 描述 AUTO 数据库ID自增 NONE 无状态,该类型为未设置主键类型(注解里等于跟随全局,全局里约 阅读全文
posted @ 2020-10-24 19:25 天乔巴夏丶 阅读(3189) 评论(0) 推荐(0)
摘要:注:本文代码样例及sql脚本均已上传至gitee:spring-boot-mybatis-plus学习 基本查询 /** * id=? */ @Test void selectById() { User user = mapper.selectById(1087982257332887553L); 阅读全文
posted @ 2020-10-24 13:49 天乔巴夏丶 阅读(12051) 评论(0) 推荐(2)
摘要:[toc] 前文传送门: "mybatis源码学习:从SqlSessionFactory到代理对象的生成" "mybatis源码学习:一级缓存和二级缓存分析" "mybatis源码学习:基于动态代理实现查询全过程" 一、自定义插件流程 自定义插件,实现Interceptor接口。 实现interce 阅读全文
posted @ 2020-04-26 17:15 天乔巴夏丶 阅读(812) 评论(4) 推荐(4)
摘要:前文传送门: "mybatis源码学习:从SqlSessionFactory到代理对象的生成" "mybatis源码学习:一级缓存和二级缓存分析" 下面这条语句,将会调用代理对象的方法,并执行查询过程,我们一起来看看它的内部是如何实现的。 一、动态代理:执行代理对象的方法时拦截,进行方法增强。 可以 阅读全文
posted @ 2020-04-26 10:05 天乔巴夏丶 阅读(739) 评论(0) 推荐(1)
摘要:[toc] 前文传送门: "mybatis源码学习:从SqlSessionFactory到代理对象的生成" 零、一级缓存和二级缓存的流程 以这里的查询语句为例。 一级缓存总结 以下两种情况会直接在一级缓存中查找数据 主配置文件或映射文件没有配置二级缓存开启。 二级缓存中不存在数据。 根据statet 阅读全文
posted @ 2020-04-25 22:03 天乔巴夏丶 阅读(785) 评论(0) 推荐(2)
摘要:[toc] 一、根据XML配置文件构建SqlSessionFactory 一、首先读取类路径下的配置文件,获取其字节输入流。 二、创建SqlSessionFactoryBuilder对象,调用内部的build方法。 三、根据字节输入流创建XMLConfigBuilder即解析器对象parser。 四 阅读全文
posted @ 2020-04-25 15:06 天乔巴夏丶 阅读(863) 评论(0) 推荐(1)