MyBatis-Plus学习笔记——已完结
MyBatis-Plus从基础使用到进阶,这也是我第一个系统学习的课外知识,纪念一下
HeresJohnny
用这个省笔油还省本儿
展开
-
整点活,MyBatis-Plus学习笔记(自动填充)
前言和简介(这个比较简单,就是执行insert操作的时候放一个新增时间,update的时候放一个修改时间)这个是自己学习时候记得笔记要是想详细了解可以去MP官网,上边有更详细的配置流程以及视频教学:MyBatis-Plus实现实体类和数据库中加入相应的insertTime、updateTime字段并在实体类中通过指定@TableField中的fill属性来确定何时填充 // 修改时设置的修改时间 @TableField(fill = FieldFill.INSERT_UPDAT原创 2020-06-01 17:34:11 · 184 阅读 · 0 评论 -
整点活,MyBatis-Plus学习笔记(SQL注入器——选装件)
前言一些MyBatisPlus已经实现好的自定义SQL方法这个是自己学习时候记得笔记uy要是想详细了解可以去MP官网,上边有更详细的配置流程以及视频教学:MyBatis-PlusInsertBatchSomeColumn批量新增数据,自选字段insert添加步骤:自定义Injector中加入该选装件@Componentpublic class MySQLInjector extends DefaultSqlInjector { @Override public List原创 2020-06-03 18:05:52 · 1724 阅读 · 1 评论 -
整点活,MyBatis-Plus学习笔记(SQL注入器)
前言最后一章辣!!!jiajiajiajiajiajai这个是自己学习时候记得笔记要是想详细了解可以去MP官网,上边有更详细的配置流程以及视频教学:MyBatis-Plus概念Mp的BaseMapper提供了很多方法,但这些方法可能不够使用,所以可以创建自定义方法步骤新建类 extends AbstractMethod实现injectMappedStatement方法,在这个方法中自定义执行接口public class DeleteAllMethod extends AbstractMe原创 2020-06-03 16:59:28 · 254 阅读 · 0 评论 -
整点活,MyBatis-Plus学习笔记(动态表名SQL解析器)
前言偶摩西罗伊这个是自己学习时候记得笔记要是想详细了解可以去MP官网,上边有更详细的配置流程以及视频教学:MyBatis-Plus概念及使用场景有些数据表的数据量比较大,可以进行份表存储,分出来的表有不同的数据以及相同的字段,而这些表表名基本类似,只是后缀不同。数据分表后,对数据进行查询或者操作时,不可以只针对固定的表名,需要动态的拼接要操作的表名,此时使用动态表名SQL解析器实现也要写在分页插件中,与多租户SQL解析类似创建保存动态表名的数据结构(这里用的public static Th原创 2020-06-03 15:15:11 · 805 阅读 · 0 评论 -
整点活,MyBatis-Plus学习笔记(多租户)
前言QAQ没找到实习,只能照着官网自学,可我TM连多租户真正的场景都没遇到过这个是自己学习时候记得笔记要是想详细了解可以去MP官网,上边有更详细的配置流程以及视频教学:MyBatis-Plus概念一种架构:实现在多用户环境下,共用相同的系统,同时确保各个用户之间的数据隔离性实现方案共有三种实现方案独立数据库:一个租户一套数据库优点:数据隔离级别高,为每个用户提供独立数据库,有助于数据模型拓展设计,满足各个用户自己的需求,出现故障时恢复数据简单缺点:增大数据库安装数量,增大维护成本共享数原创 2020-06-03 13:04:17 · 375 阅读 · 0 评论 -
整点活,MyBatis-Plus学习笔记(性能分析)
前言开发时看看自己写的SQL性能,性能分析插件具有性能损耗,不建议生产环境使用这个是自己学习时候记得笔记要是想详细了解可以去MP官网,上边有更详细的配置流程以及视频教学:MyBatis-Plus配置执行第三方SQL打印MP 3.1.0以上版本使用pom中配置<!-- https://mvnrepository.com/artifact/p6spy/p6spy --><dependency> <groupId>p6spy</groupId&g原创 2020-06-03 12:01:00 · 187 阅读 · 0 评论 -
整点活,MyBatis-Plus学习笔记(乐观锁)
前言上一篇对乐观锁进行了介绍,MyBatis-Plus用版本号机制实现乐观锁这个是自己学习时候记得笔记要是想详细了解可以去MP官网,上边有更详细的配置流程以及视频教学:MyBatis-Plus版本号(version)机制流程取出记录时,获取version字段更新时,判断当前version与数据库中数据version是否一致版本一致则进行更新,version+1;不一致则失败,下一步自己决定功能实现配置乐观锁插件MyBatisPlusConfig类中进行插件配置(之前配置分页插件的那个原创 2020-06-01 18:18:34 · 143 阅读 · 0 评论 -
引言:数据库常规知识——乐观锁 与 悲观锁
什么是悲观锁总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它拿到锁。Java中synchronized和ReentrantLock等独占锁就是悲观锁思想的实现。什么是乐观锁总是假设最好的情况,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,可以使用版本号机制和CAS算法实现。如果对数据的select操作较多的话可以使用乐观锁的实现使用版本号机制下一节将对My原创 2020-06-01 17:54:20 · 100 阅读 · 0 评论 -
整点活,MyBatis-Plus学习笔记(逻辑删除)
此处无前言这个是自己学习时候记得笔记要是想详细了解可以去MP官网,上边有更详细的配置流程以及视频教学:MyBatis-Plus基本配置原创 2020-06-01 12:14:04 · 290 阅读 · 0 评论 -
整点活,MyBatis-Plus学习笔记(AR 模式)(我复活辣)
前言这部分(AR、逻辑删除、MP通过version实现的乐观锁、自动填充)功能写项目的时候用来着,就是学的急就没有写笔记。这个是自己学习时候记得笔记要是想详细了解可以去MP官网,上边有更详细的配置流程以及视频教学:MyBatis-Plus什么是AR模式(Active Record)通过实体类对象直接进行对表的增删改查操作(JPA)准备工作实体类extends Model< T >对应实体类有对应操作的Mapper接口,接口继承BaseMapper< T >代码原创 2020-05-31 16:06:55 · 184 阅读 · 0 评论 -
整点活,MyBatis-Plus学习笔记(第2.4节 D 更新)
前言U结束,D开始这个是自己学习时候记得笔记要是想详细了解可以去MP官网,上边有更详细的配置流程以及视频教学:MyBatis-Plus删除操作返回值为影响行数根据id、idList、idSet、map删除其中 idList、idSet 为批量删除map 为传入相应删除条件 public void deleteTypeId(){// List<Int...原创 2020-04-20 16:44:18 · 93 阅读 · 0 评论 -
整点活,MyBatis-Plus学习笔记(第2.3节 U 更新)
前言R结束,开始U(歌手。。还是第三季和上一季是巅峰)这个是自己学习时候记得笔记要是想详细了解可以去MP官网,上边有更详细的配置流程以及视频教学:MyBatis-Plus更新操作返回值为影响行数updateById()传入要更新对象实体,不为null的属性放到set中 public void updateTypeById() { Type type = new...原创 2020-04-20 16:38:56 · 133 阅读 · 0 评论 -
整点活,MyBatis-Plus学习笔记(第2.2节 R 分页查询)
前言此前学习了条件构造器查询,一定要记住几个常用的查询方法(比如id,queryWrapper的使用,和连接词估计不常用的也快忘光了),这个比较像Hibernate的QBC,还算可以。这篇介绍MP中的分页查询这个是自己学习时候记得笔记要是想详细了解可以去MP官网,上边有更详细的配置流程以及视频教学:MyBatis-Plus分页前言还记得MyBatis中,需要引入pageHelper来执行分...原创 2020-04-20 16:20:59 · 273 阅读 · 0 评论 -
整点活,MyBatis-Plus学习笔记(第2.2节 R 条件构造器查询)
前言上节为通过id、idList、idSet、Map设置条件进行等值查询,但在实际使用中,还需要使用> <等连接符进行查询,那么此次则介绍条件构造器这一使用方法。这个是自己学习时候记得笔记要是想详细了解可以去MP官网,上边有更详细的配置流程以及视频教学:MyBatis-Plus条件构造器使用(QueryWrapper)执行单表操作的 like > < is ...原创 2020-04-20 13:26:29 · 484 阅读 · 0 评论 -
整点活,MyBatis-Plus学习笔记(第2.2节 R 基本查询)
前言上一节介绍了简单的insert操作,本节为简单的select操作。(tia,momoko:老娘杀回来了)这个是自己学习时候记得笔记要是想详细了解可以去MP官网,上边有更详细的配置流程以及视频教学:MyBatis-Plus普通查询根据主键查询单个selectById()根据主键组成的列表或集合查询selectBatchIds()根据条件组成的Map对象进行查询selectByMap...原创 2020-04-18 17:56:44 · 960 阅读 · 0 评论 -
整点活,MyBatis-Plus学习笔记(第2.1节 C)
前言有了初步认识后,了解一下基本用法(今天刚嘲笑完邓超水煎包煎糊了之后,晚上蒸包子的时候水烧干了!!我的包子也蒸糊了!!!晚上歌手突围赛,tia momoko姐妹花冲鸭!!!)这个是自己学习时候记得笔记要是想详细了解可以去MP官网,上边有更详细的配置流程以及视频教学:MyBatis-Plus新增(Create)service层直接调用mapper中的insert(T t)方法,参数就是Ba...原创 2020-04-17 21:08:22 · 117 阅读 · 0 评论 -
整点活,MyBatis-Plus学习笔记(第1节)
前言MyBatis-Plus有了初步认识,Lombok整好了之后,开始在项目中配置MyBatis-Plus。(把烤冷面的面皮蒸出来,自己炸点辣椒油然后裹在一起当个自制辣条可真下饭)这个是自己学习时候记得笔记要是想详细了解可以去MP官网,上边有更详细的配置流程以及视频教学:MyBatis-Plus配置一个小例子(五步走战略)Step1.数据库建个表之前上课时候用的一套数据库中的一张表,pa...原创 2020-04-17 19:36:17 · 115 阅读 · 0 评论 -
整点活,MyBatis-Plus学习笔记(第0节)
前言基于SpringBoot、maven,也请不要忘记MyBatis相关知识(说实话被组里大佬逼着学习也挺涨知识的)回忆:MyBatis的优、劣势优势:SQL自由控制,开发灵活性高,性能高SQL与代码分离,方便维护支持动态SQL,,,等标签劣势:简单的CRUD也需要整SQL语句mapper.xml里边的SQL越写越多,维护也不是太简单分页需要外部插件实现MyBatis...原创 2020-04-17 18:05:10 · 101 阅读 · 0 评论