当前位置: 首页 > news >正文

MybatisPlus-扩展功能

逻辑删除+乐观锁

MyBatisPlus从入门到精通-3(含mp代码生成器)

Db静态工具类

Spring依赖循环问题

代码生成器

MybatisPlus代码生成器

枚举处理器

我们这里用int来存储状态
需要注解,很不灵活
希望用枚举类来代替这个Integer
在这里插入图片描述
这样的话我们进行service操作就可以直接看到信息
在这里插入图片描述
但是枚举类型和数据库中表的字段不匹配,怎么实现这个数据类型的转换呢?
在这里插入图片描述
mp实现了好用的枚举处理器和json处理器供我们使用
在这里插入图片描述

具体操作

创建注解和替换类型就不说了
1.enum中加@EnumValue注解
枚举类那个对应表的字段一定要包含数据库对应字段所以可能出现的情况
因为他是enum类型如果你查出个3他也没法创建啊,枚举类不给set,且构造方法是私有的
在这里插入图片描述
2.在配置文件写一个配置
在这里插入图片描述
这样写逻辑时候代码可读性就变的好一点
在这里插入图片描述
这样返回的是对象名啊,如果想设置别的作为返回的json数据的话,用@JsonValue标注
在这里插入图片描述

在这里插入图片描述

小声哔哔

我感觉常量类定义一下也可以这样
定义几个变量,就是要用英文标识呗,感觉用处不大

JSON处理器

我们查User表里面有个Userinfo的json属性
我们就用对象接收UserJson,需要json处理器
要不然只能有String 接收 info 自己处理
这时只需要加上@TableField(typeHandler = JacksonTypeHandler)注释
就是标定json处理器
我们json处理器不像枚举一样有全局配置,所以需要我们一个一个写注解喽
然后还要在@Tablename(autoResultMap = true)
开启resultmap映射
在这里插入图片描述

分页插件

分页插件最常用
这个是mp里面的功能哈
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

举例

封装VO返回就不看了
看一些怎么分页查吧
在这里插入图片描述
分页查询实体(所有业务分页查询都可以用它)
在这里插入图片描述
User扩展分页查询参数继承PageQuery
在这里插入图片描述
在这里插入图片描述

优化

其实上面的构建page
和封装VO的过程是每个分页查询都会做的
所以其实我们可以提取成工具方法
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
写完后改造之前业务逻辑
非常简洁
在这里插入图片描述

相关文章:

  • Axure RP11 新功能:为设计师插上“翅膀”
  • Low code web framework for real world applications, in Python and Javascript
  • 基于SpringBoot+Vue的老年人体检管理系统的设计与实现(源码+SQL脚本+LW+部署讲解等)
  • Android JNI的理解与使用。
  • 获取某厂招聘岗位信息
  • linux 面试题
  • 后台管理系统-项目初始化
  • 网络编程(24)——实现带参数的http-get请求
  • Linux 文件内容查看
  • 力扣LeetCode: 740 删除并获得点数
  • 机器视觉--图像的运算(乘法)
  • EXCEL解决IF函数“您已为此函数输入太多个参数”的报错
  • 12. Docker 网络(bridge,host,none,container,自定义网络)配置操作详解
  • 通读【基于深度学习的网络异常流量检测研究与系统实现】
  • Django 5实用指南(二)项目结构与管理
  • 【R语言】主成分分析与因子分析
  • 【vue】nodejs版本管理利器:nvm
  • MySQL 之INDEX 索引(Index Index of MySQL)
  • 请求转发和响应重定向
  • 深入剖析模型推理:原理、技术与挑战
  • 创历史同期新高!“五一”假期全国快递揽投超48亿件
  • 机关食堂向游客开放的重庆荣昌区,“消费市场迎来历史性突破”
  • 科技赋能文化体验,“五一”假期“海昏侯”人气创新高
  • 山东滕州一车辆撞向公交站台撞倒多人,肇事者被控制,案件已移交刑警
  • 印巴军事对峙加剧,小规模冲突收场还是走向大战?
  • 从陈毅杯到小应氏杯,五一长假上海掀起围棋热