mybatis-plus根据多个字段排序_Mybatis Plus学习笔记(逻辑删除/动态填充/常用插件)...
一、逻辑删除
1.逻辑删除后,将不会被查询出来。
mybatis
2.查询中排除逻辑删除字段
- 在Wrappers.<User>lambdaQuery().eq(User::getIsDel, 0);
- 自定义@TableField(select = false)
二.自动填充
本次针对数据表中的create_time、update_time字段进行自动填充实例。
1.自动填充实例
public
2.自动填充优化
首先判断是否有当前参数,有则执行自动填充,没有则不执行自动填充。
@Component
三.乐观锁插件
1.实现步骤
@Configuration
2.主意事项
- 支持的数据类型只有:int、Integer、long、Long、Date、Timestamp、LocalDateTime
- 直属类型下 newVersion = oldVersion + 1
- newVersion 会回写到entity中
- 只支持updateById(id)与update(entity, wrapper)方法
- 在update(entity, wrapper)方法下,wrapper不能复用
四.性能分析插件
1.性能分析插件
@Bean@Profile({"dev", "test"}) // 在dev和test环境中开启public PerformanceMonitorInterceptor performanceMonitorInterceptor() {PerformanceMonitorInterceptor pmi = new PerformanceMonitorInterceptor();return pmi;}
2.执行sql打印日志
driver
3.创建spy.properties
#
五.多租户SQL解析器
1.示例工程(官网示例)
// 官网示例
六.动态表名SQL解析器
1.动态表名实现
ITableNameHandler 接口注入到 DynamicTableNameParser 处理器链中,将动态表名解析器注入到 MP 解析链
2.主意事项
- 原理为解析替换设定表名为处理器的返回表名,表名建议可以定义复杂一些避免误替换
- 例如:真实表名为 user 设定为 mp_dt_user 处理器替换为 user_2019 等
7.自定义方法
1.自定义方法
public
2.alwaysUpdateSomeColumnById示例
// 在MySqlInjector.java文件中添加alwaysUpdateSomeColumnById注入。并且不更改name值
3.deleteByIdWithFill示例
// 在MySqlInjector.java文件中添加deleteByIdWithFill注入
4.insertBatchSomeColumn示例
// 在MySqlInjector.java文件中添加insertBatchSomeColumn注入
mybatis-plus根据多个字段排序_Mybatis Plus学习笔记(逻辑删除/动态填充/常用插件)...相关推荐
- mysql查询数据为0的所有字段6_MySQL8.0 初级学习笔记(六)查询数据
MySQL8.0 初级学习笔记(六)查询数据 MySQL8.0 初级学习笔记(六)查询数据 查询有多种方法:单表查询,使用集合函数查询,连接查询,子查询,合并查询结果,为表和字段取别名,使用正则表达式 ...
- mybatis 多字段排序_mybatis example排序
背景 使用mybatis example方式做查询时候,业务需要按照条件排序,比如:创建时间倒序 example.setOrderByClause("create_time desc&quo ...
- 强大的DataGrid组件[13]_字段过滤(Filter)——Silverlight学习笔记[21]
在DataGrid中使用字段过滤可以用来进行数据的筛选,查找出符合条件的信息.本文将为大家介绍如何对DataGrid执行字段过滤. 需要了解的知识 1)PagedCollectionView 它代表了 ...
- sql依据单个字段去重_小白学习笔记,测试工程师必备SQL语句整理
作为一个软件测试工程师,我们在测试过程中往往需要对数据库数据进行操作,但是我们的操作大多以查询居多,有时会涉及到新增,修改,删除等操作,所以我们其实并不需要对数据库的操作有特别深入的了解,以下是我在工 ...
- MySQL中会用到age字段的索引_MySQL学习笔记(四):正确使用索引(二)
上一篇学习到了MySQL中的索引是什么,以及一些关于索引的简单的知识,这篇我打算详细地谈一谈如何正确地使用索引.索引的使用看起来很简单,但是在真正去学习它的时候才发现,原来是暗藏玄机.使用索引时有很多 ...
- mybatis学习笔记四(动态sql)
直接贴图,注解在代码上,其他的配置文件在学习一中就不贴了 1 数据库 2 实体类 package com.home.entity;/*** 此类是: 用户实体类* @author hpc* @2017 ...
- 非支配排序遗传算法NSGA-II学习笔记
一.多目标优化问题的解 在单目标优化问题中,通常最优解只有一个,而且能用比较简单和常用的数学方法求出其最优解.然而在多目标优化问题中,各个目标之间相互制约,可能使得一个目标性能的改善是以其他目标性能为 ...
- 【Mybatis学习笔记】Mapper动态代理四项原则和注意事项
如果使用原始的DAO,要自己对其进行实现,而如果使用Mybatis的Mapper动态代理,就可以让Mybatis自动帮你实现DAO接口. Mapper动态代理的四项原则 1.接口方法名需要与Mappe ...
- mybatis多字段排序_解决mybatis中order by排序无效问题
1.#将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号.如:order by #{user_id},如果传入的值是111,那么解析成sql时的值为order by "111&qu ...
最新文章
- Linux里10个最危险的命令
- 斯坦福-随机图模型-week4.0_
- WDM驱动程序入门(很详细)
- SpingMVC Model 和ModelAndView,以及从参数的设置和接收
- Spark常见优化原则
- Atitit 文档资料整理的规范流程与问题解决目录1. 减肥 11.1. 剥离非原创类文件 11.2. 去重 11.3. 转换格式 21.4. Topic主题剥离 22. 脱敏 2
- php mysql注入测试工具_PHP+MYSQL 【注入漏洞】攻防测试
- linux下部署selenium爬虫程序
- jieba分词(1):入门案例
- EAX AX等寄存器之间的关系
- 神鬼世界更新完了为什么显示与服务器断开连接,全新服务器构架 神鬼世界6月23日数据互通公告...
- 两平面平行但不重合的条件是_____黑龙江省大庆外国语学校高中数学_第二章《2.2_直线、平面平行的判定及其性质》单元测试5_新人教A版必修3...
- burp的安装步骤(win+linux)
- EasyExcel的导入和导出
- ftp主动模式和被动模式的区别
- 利用 NSS Key Log 解密 HTTPS
- canvas编写飞机大战
- 【OpenStack】使用Komodo远程调试python(OpenStack)
- 全国话费充值;自动充值软件代理
- 计算机在电影特技中的应用,计算机3D技术在电影中的应用.doc