Mybatis-Plus通用枚举 -基于jackson(Springboot-web内置)
2024-10-20 16:18:40
枚举类
使用 @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"}]
最新文章
- SDOI 2016 征途 决策单调性
- 初用idea建立javaweb遇到的问题与心得
- Dynamics AX 2012 R2 报表部署权限错误
- CentOS下httpd下php 连接mysql 本机可以,127.0.0.1不能访问
- 使django与数据库保持长连接
- C# 语音识别(文字to语音、语音to文字)
- struts2文件异步上传
- api图片传输,转成64位字符串进行传输
- nRF Toolbox 1.2 使用AKII的实现,而Becon始终不好使
- Mac软件记录
- more分页阅读
- k8s通过service访问pod(五)--技术流ken
- Newtonsoft.Json日期转换
- NOIP2015跳石头
- this 指向 及 调用方式
- rowspan和colspan的区别粗解
- CodeForces - 768C Jon Snow and his Favourite Number 桶排
- Scrum 6.0
- web项目在eclipse workspace中的位置
- 通过GUID生成可持久化的PID