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的过程是每个分页查询都会做的
所以其实我们可以提取成工具方法



写完后改造之前业务逻辑
非常简洁

相关文章:
MybatisPlus-扩展功能
逻辑删除乐观锁 MyBatisPlus从入门到精通-3(含mp代码生成器) Db静态工具类 Spring依赖循环问题 代码生成器 MybatisPlus代码生成器 枚举处理器 我们这里用int来存储状态 需要注解,很不灵活 希望用枚举类来代替这个Integer 这样的话我…...
《计算机视觉》——角点检测和特征提取sift
角点检测 角点的定义: 从直观上理解,角点是图像中两条或多条边缘的交点,在图像中表现为局部区域内的灰度变化较为剧烈的点。在数学和计算机视觉中,角点可以被定义为在两个或多个方向上具有显著变化的点。比如在一幅建筑物的图像…...
DeepSeek模型快速部署教程-搭建自己的DeepSeek
前言:在人工智能技术飞速发展的今天,深度学习模型已成为推动各行各业智能化转型的核心驱动力。DeepSeek 作为一款领先的 AI 模型,凭借其高效的性能和灵活的部署方式,受到了广泛关注。无论是自然语言处理、图像识别,还是…...
Swift CChar元祖转String
iOS有些API是调用C函数,Swift端获得的数据是CChar元祖,需要转成String方便使用,下面的代码以获取手机型号为例 方式一 var systemInfo utsname() uname(&systemInfo) let deviceModel withUnsafePointer(to: systemInfo.machine) { …...
【刷题】leetcode
题目 现有 s e r v e r N u m 台服务器,编号依次为 1 − s e r v e r...
WPF创建自定义类和控件及打包成dll引用
WPF创建自定义类和控件及打包成dll引用 一、前言二、创建自定义类和控件并生成dll文件2.1创建类库项目2.2创建自定义类和控件2.3生成dll文件 三、在其他项目中引用3.1添加dll文件引用3.2cs文件中引用命名空间3.3XAML文件中引用命名空间 一、前言 出于一些代码复用的需求&#…...
Zookeeper(54)如何使用Zookeeper的命令行工具?
使用 Zookeeper 的命令行工具可以方便地进行各种操作,如管理节点、查看状态、设置配置信息等。以下是详细的步骤和代码示例,涵盖如何使用 Zookeeper 的命令行工具。 1. 安装和配置 Zookeeper 首先确保已经安装并配置好 Zookeeper。可以在 Zookeeper 的…...
一周学会Flask3 Python Web开发-http响应状态码
锋哥原创的Flask3 Python Web开发 Flask3视频教程: 2025版 Flask3 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili 在Flask程序中,客户端发出的请求触发相应的视图函数,获取返回值会作为响应的主体,最后生成…...
【数据挖掘】
数据挖掘 目录:1. 数据转换2. 属性选择3. 独立于方案的选择4. 探索空间5. 具体方案的选择6. 离散化数值属性无监督离散化基于熵的离散化其他离散化方法 k-means算法原理算法步骤优缺点优点缺点 代码示例(使用Python和scikit-learn库)代码解释…...
位操作符 练习
一、异或(^) 参与运算的两个值,如果两个相应bit位相同,则结果为0,否则为1。 即: 0^0 0,1^0 1, 0^1 1,1^1 0 按位异或的3个特点: (1) 0异…...
解决Python升级导致PySpark任务异常方案
背景 上一篇文章中写了 Linux 多Python版本统一和 PySpark 依赖 python 包方案,但是最近升级 Linux 服务器 上 Python 版本(3.6.8 -> 3.7.16,手动编译Python官方的二进制源码)之后,发现之前文章提到 python3 -m v…...
Linux中线程创建,线程退出,线程接合
线程的简单了解 之前我们了解过 task_struct 是用于描述进程的核心数据结构。它包含了一个进程的所有重要信息,并且在进程的生命周期内保持更新。我们想要获取进程相关信息往往从这里得到。 在Linux中,线程的实现方式与进程类似,每个线程都…...
机器视觉检测中,2D面阵相机和线扫相机的区别
2D面阵相机和线扫相机是工业视觉系统中常用的两种相机类型,各有其特点和应用场景。 2D面阵相机 特点: 成像方式:通过二维传感器一次性捕捉整个场景的图像。 分辨率:分辨率由传感器的像素数决定,常见的有百万像素到几千…...
LeetCode 热题 100_N 皇后 (62_51_困难_C++)(递归(回溯))
LeetCode 热题 100_N 皇后(62_51) 题目描述:输入输出样例:题解:解题思路:思路一(递归(回溯)): 代码实现代码实现(思路一(递…...
Winform(C#) 项目保存页面
上一张我们已经实现了TCP和串口页面的数据展示,和保存控件 我们这一章,实现如何去,控制保存。 一、控件展示 CheckBox TextBox Button label Name: checkSaveImage checkDelete txtSaveDays txtSaveImagePath btnSelectIm…...
【LeetCode: LCR 126. 斐波那契数 + 动态规划】
🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…...
OSPF(开放路径最短优先)
ospf优先级:内部优先级默认为10,外部优先级默认为150 1.ospf的三张表 (1)邻居表 <记录邻居状态和关系> (2)拓扑表 <链路状态数据库> (3)路由表 <对链路状态数据库进…...
JAVA EE初阶 - 预备知识(四)
一、API API 即应用程序编程接口(Application Programming Interface),是一组定义、协议和工具,用于不同软件组件、应用程序或系统之间进行交互和通信。以下从多个方面详细介绍 API: 基本概念 接口规范:A…...
如何解决服务器端口被攻击:全面防护与快速响应
服务器端口被攻击是网络安全中常见的问题之一,尤其是当服务器暴露在公共网络上时,容易成为黑客的目标。攻击者可能通过扫描开放端口、利用漏洞或发动拒绝服务(DoS/DDoS)攻击来破坏服务器的正常运行。本文将详细介绍如何检测、防御…...
golang panic原理
数据结构与底层实现 Goroutine结构体 stack(栈内存范围) 结构体类型,包含 lo(低地址)和 hi(高地址)两个 uintptr 字段,描述 Goroutine 的栈内存区间 [lo, hi)。初始栈大小为 2KB&a…...
XML Group端口详解
在XML数据映射过程中,经常需要对数据进行分组聚合操作。例如,当处理包含多个物料明细的XML文件时,可能需要将相同物料号的明细归为一组,或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码,增加了开…...
应用升级/灾备测试时使用guarantee 闪回点迅速回退
1.场景 应用要升级,当升级失败时,数据库回退到升级前. 要测试系统,测试完成后,数据库要回退到测试前。 相对于RMAN恢复需要很长时间, 数据库闪回只需要几分钟。 2.技术实现 数据库设置 2个db_recovery参数 创建guarantee闪回点,不需要开启数据库闪回。…...
label-studio的使用教程(导入本地路径)
文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...
模型参数、模型存储精度、参数与显存
模型参数量衡量单位 M:百万(Million) B:十亿(Billion) 1 B 1000 M 1B 1000M 1B1000M 参数存储精度 模型参数是固定的,但是一个参数所表示多少字节不一定,需要看这个参数以什么…...
【决胜公务员考试】求职OMG——见面课测验1
2025最新版!!!6.8截至答题,大家注意呀! 博主码字不易点个关注吧,祝期末顺利~~ 1.单选题(2分) 下列说法错误的是:( B ) A.选调生属于公务员系统 B.公务员属于事业编 C.选调生有基层锻炼的要求 D…...
SpringTask-03.入门案例
一.入门案例 启动类: package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...
Yolov8 目标检测蒸馏学习记录
yolov8系列模型蒸馏基本流程,代码下载:这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中,**知识蒸馏(Knowledge Distillation)**被广泛应用,作为提升模型…...
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...
腾讯云V3签名
想要接入腾讯云的Api,必然先按其文档计算出所要求的签名。 之前也调用过腾讯云的接口,但总是卡在签名这一步,最后放弃选择SDK,这次终于自己代码实现。 可能腾讯云翻新了接口文档,现在阅读起来,清晰了很多&…...
