Mybatis-Plus通用枚举 -基于jackson(Springboot-web内置)
枚举类
使用 @EnumValue注解标识数据库字段
package com.example.enumpackage;
import com.baomidou.mybatisplus.annotation.EnumValue;
import com.fasterxml.jackson.annotation.JsonValue;
/**
* @description: mybatis-plus通用枚举 ||性别
* @author: GuoTong
* @createTime: 2021-08-21 20:38
* @since JDK 1.8 OR 11
**/
public enum GenderTypeEnum {
WOMAN(0, "女"),
MAN(1, "男"),
SECURITY(2, "保密");
//数据库存入的性别字段:0标识女 ,1标识男,2标识保密
@EnumValue
@JsonValue //标记响应json值
private Integer gender;
private String chinaMsg;
GenderTypeEnum(int gender, String chinaMsg) {
this.gender = gender;
this.chinaMsg = chinaMsg;
}
@Override
public String toString() {
return "GenderTypeEnum{" +
"gender=" + gender +
", chinaMsg='" + chinaMsg + '\'' +
'}';
}
}
建立枚举解析策略
@Bean
public Jackson2ObjectMapperBuilderCustomizer customizer(){
return builder -> builder.featuresToEnable(SerializationFeature.WRITE_ENUMS_USING_TO_STRING);
}
回头再枚举数据库字段加上解析注解: @JsonValue //标记响应json值
测试
@Test
public void TestCommonEnum() {
//通用枚举|将性别转化为1男,0女去查询
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.eq("gender", GenderTypeEnum.WOMAN);
List<User> users = service.list(wrapper);
System.out.println(users);
}
结果:
[{"id":5,"name":"蚂蚁金服","gender":"0","age":23,"address":"月牙湾","qq":"23435546","email":"gsgrv@co.com"},{"id":7,"name":"瑞雯","gender":"0","age":23,"address":"召唤师峡谷","qq":"9090960","email":"ruiwen@13.com"},{"id":8,"name":"汤姆","gender":"0","age":23,"address":"上海市","qq":"8967340","email":"tom@google.com"},{"id":9,"name":"刘德华","gender":"0","age":233,"address":"重庆市","qq":"23464575","email":"wangfei@qq.cn"}]
作者:隔壁老郭
个性签名:独学而无友,则孤陋而寡闻。做一个灵魂有趣的人!
如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!
Java入门到入坟
万水千山总是情,打赏一分行不行,所以如果你心情还比较高兴,也是可以扫码打赏博主,哈哈哈(っ•̀ω•́)っ✎⁾⁾!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南