新闻详情

新闻详情

首页 / 资讯中心 / 详情

【10】SpringBoot4 MyBatisPlus 枚举类型(enum)

发布时间:2026/11/13 12:09:22来源:尧图网络
【10】SpringBoot4 MyBatisPlus 枚举类型(enum)
SpringBoot4 MyBatisPlus 枚举类型enum前言创建工程pom.xmlapplication.yml创建枚举类UserStatusEnum调整实体类TbClient创建测试类EnumTest前言SpringBoot 版本4.0.8JDK 版本21.0.11IDEA 开发工具版本2026.2MySQL 数据库版本8.4.11.LTS关于项目MybatisPlus 更多使用可参考官网https://baomidou.com/相关依赖包坐标可参考官网https://mvnrepository.com/artifact/com.mysql/mysql-connector-j建表 SQLCREATETABLEtb_client(idBIGINTNOTNULLPRIMARYKEYAUTO_INCREMENTCOMMENT自增ID,client_idBIGINTNOTNULLCOMMENTID编号,user_noVARCHAR(30)COMMENT账号,user_passwordVARCHAR(60)COMMENT密码,nick_nameVARCHAR(30)COMMENT昵称,real_nameVARCHAR(30)COMMENT真实姓名,statusTINYINTNOTNULLDEFAULT0COMMENT状态0可用1禁用,info JSONCOMMENT扩展信息,created_timeDATETIMENOTNULLDEFAULTCURRENT_TIMESTAMPCOMMENT创建时间,upated_timeDATETIMENOTNULLDEFAULTCURRENT_TIMESTAMPCOMMENT更新时间)COMMENT客户端信息表;INSERTINTOtb_client(client_id,user_no,user_password,nick_name,real_name,info)VALUES(100001,zhangsan,123456,张三,张三,{age: 25, gender: male, city: 上海}),(100002,lisi,123456,李四,李四,{age: 28, gender: male, city: 北京}),(100003,wangwu,123456,王五,王五,{age: 30, gender: male, city: 深圳});创建工程参考《SpringBoot4 MyBatisPlus 代码自动生成》使用代码自动生成如下用户状态status是Integer类型建议修改为枚举类型.pom.xmlprojectxmlnshttp://maven.apache.org/POM/4.0.0xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsdparentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion4.0.8/versionrelativePath//parentmodelVersion4.0.0/modelVersiongroupIdcom.junjiu.mybatisplus/groupIdartifactIdspringboot4-mybatisplus/artifactIdversion1.0-SNAPSHOT/versionpackagingjar/packagingnamespringboot4-mybatisplus/nameurlhttp://maven.apache.org/urlpropertiesmaven.compiler.source21/maven.compiler.sourcemaven.compiler.target21/maven.compiler.targetproject.build.sourceEncodingUTF-8/project.build.sourceEncodingmybatis-plus.version3.5.17/mybatis-plus.versionfastjson2.version2.0.65/fastjson2.versiondruid.version1.2.28/druid.version/propertiesdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-webmvc/artifactId/dependency!-- --!-- MyBatis Plus --!-- --dependencygroupIdcom.baomidou/groupIdartifactIdmybatis-plus-spring-boot4-starter/artifactIdversion${mybatis-plus.version}/version/dependency!-- --!-- MySQL --!-- Spring Boot 4.0.8 BOM 管理版本9.7.0 --!-- --dependencygroupIdcom.mysql/groupIdartifactIdmysql-connector-j/artifactIdscoperuntime/scope/dependency!-- --!-- Druid --!-- --dependencygroupIdcom.alibaba/groupIdartifactIddruid-spring-boot-4-starter/artifactIdversion1.2.28/version/dependencydependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactIdscopeannotationProcessor/scope/dependencydependencygroupIdcom.alibaba.fastjson2/groupIdartifactIdfastjson2/artifactIdversion${fastjson2.version}/version/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactId/dependency/dependencies/projectapplication.ymlspring:application:name:springboot3-mybatisplus-prodatasource:type:com.alibaba.druid.pool.DruidDataSourcedriver-class-name:com.mysql.cj.jdbc.Driverurl:jdbc:mysql://192.168.88.101:3305/testdb?useUnicodetruecharacterEncodingUTF-8serverTimezoneAsia/ShanghaiuseSSLfalseallowPublicKeyRetrievaltrueusername:adminpassword:Qwer1314druid:# 初始化连接数initial-size:5# 最小空闲连接数min-idle:5# 最大连接数max-active:20# 获取连接最大等待时间max-wait:60000# 定期检测空闲连接time-between-eviction-runs-millis:60000# 最小空闲时间min-evictable-idle-time-millis:300000# 连接有效性检测validation-query:SELECT 1test-while-idle:truetest-on-borrow:falsetest-on-return:false# SQL 统计filter:stat:enabled:truelog-slow-sql:trueslow-sql-millis:2000wall:enabled:truemybatis-plus:mapper-locations:classpath*:/mapper/**/*.xmltype-aliases-package:com.junjiu.**.entityconfiguration:map-underscore-to-camel-case:truecache-enabled:falseglobal-config:banner:falsedb-config:id-type:assign_idlogic-delete-field:deletedlogic-delete-value:1logic-not-delete-value:0创建枚举类UserStatusEnumpackagecom.junjiu.mybatisplus.entity;importcom.baomidou.mybatisplus.annotation.EnumValue;importlombok.Getter;/** * 用户状态枚举 * */GetterpublicenumUserStatusEnum{NORMAL(0,正常),FREEZE(1,冻结);EnumValueprivateIntegercode;privateStringmessage;UserStatusEnum(Integercode,Stringmessage){this.codecode;this.messagemessage;}}调整实体类TbClient将用户状态status的类型由Integer修改为枚举类型UserStatusEnum创建测试类EnumTestpackagecom.junjiu.mybatisplus;importcom.alibaba.fastjson2.JSON;importcom.alibaba.fastjson2.JSONWriter;importcom.junjiu.mybatisplus.entity.TbClient;importcom.junjiu.mybatisplus.service.ITbClientService;importorg.junit.jupiter.api.Test;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.boot.test.context.SpringBootTest;SpringBootTestpublicclassEnumTest{AutowiredITbClientServiceclientService;TestpublicvoidtestSelect(){TbClientclientclientService.getById(1);System.out.println(JSON.toJSONString(client,JSONWriter.Feature.PrettyFormat));}}运行结果如下若想让结果显示为code或者message则需要在 enum 上面添加JSONField注解。例如JSONFieldprivateStringmessage;再次运行测试结果如下
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

【外设】之大彩串口显示屏 2026/11/13 0:43:49

【外设】之大彩串口显示屏

大彩串口屏初步使用 1 .官网下载 STM32 屏幕 GUI 设计资料 http://www.gz-dc.com/category/typeid/4112 找到 STM32 Keil 工程,移植相关代码因项目而异进行移植,由于项目简单,本人只对用到的指令接口进行修改。 比如:注意事项&…

阅读更多 →
无法下载Windows系统iso文件 2026/11/12 23:59:09

无法下载Windows系统iso文件

当我遇到这个问题的时候,我打开了一个网站: 登录 然后我打算下载的时候: 突然那个官方的连接就可以下载了:

阅读更多 →
【清华代码熊】DeepSeek V4.1 Flash 后训练详解 2026/11/13 10:09:00

【清华代码熊】DeepSeek V4.1 Flash 后训练详解

📌 上期解析了 DeepSeek V4.1 Flash 模型架构改进,本期解析 DeepSeek V4.1 Flash 预训练/后训练技术: 🌟 预训练:45T 文本 多模态混合语料、直接训练 sparse attention(取消 DeepSeek V4 的 dense 冷启动&…

阅读更多 →
Shuffle-R1: Efficient RL framework for Multimodal Large Language Models via Data-centric Dynamic ... 2026/11/13 13:31:48

Shuffle-R1: Efficient RL framework for Multimodal Large Language Models via Data-centric Dynamic ...

文章主要内容和创新点 主要内容 本文聚焦于多模态大语言模型(MLLM)强化学习(RL)训练中的效率问题,提出了一个名为Shuffle-R1的框架。研究发现,当前RL训练存在两个关键缺陷: 优势值坍缩(Advantage Collapsing):批次中大多数优势值集中在零附近,导致有效梯度信号被淹…

阅读更多 →
PRvL: Quantifying the Capabilities and Risks of Large Language Models for PII Redaction 2026/11/13 16:11:45

PRvL: Quantifying the Capabilities and Risks of Large Language Models for PII Redaction

一、文章主要内容总结 本文聚焦于利用大型语言模型(LLMs)实现个人身份信息(PII)脱敏的研究,旨在解决传统脱敏方法(如基于规则的系统、领域特定命名实体识别(NER)模型)泛化能力差、跨格式/跨语境适应性弱的问题。 研究通过全面评估多种LLM架构(包括密集型LLM(D-LLM…

阅读更多 →
LLaVA-RE: Binary Image-Text Relevancy Evaluation with Multimodal Large Language Model 2026/11/13 0:02:27

LLaVA-RE: Binary Image-Text Relevancy Evaluation with Multimodal Large Language Model

文章主要内容和创新点 主要内容 本文聚焦于二进制图像-文本相关性评估任务(判断图像与文本“相关”或“不相关”),针对该任务中文本格式多样、相关性定义随场景变化等挑战,提出了基于多模态大语言模型(MLLM)的解决方案LLaVA-RE。 模型设计:LLaVA-RE基于LLaVA 1.5架构,…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉