在现代 Java 开发中,我们常常需要处理各种通用的功能和需求,诸如枚举的处理、JSON 数据处理,以及分页查询等。这些功能虽然看似简单,但在实际开发中往往涉及到许多细节和优化。为了提高开发效率、减少重复代码的编写,我们通常会通过封装和抽象这些功能,形成易于复用和维护的工具类或组件。
目录
前言
在现代 Java 开发中,我们常常需要处理各种通用的功能和需求,诸如枚举的处理、JSON 数据处理,以及分页查询等。这些功能虽然看似简单,但在实际开发中往往涉及到许多细节和优化。为了提高开发效率、减少重复代码的编写,我们通常会通过封装和抽象这些功能,形成易于复用和维护的工具类或组件。
枚举处理器
User类中有一个用户状态字段:
/**
* 详细信息
*/
private String info;
/**
* 使用状态(1正常 2冻结)
*/
private Integer status;

第一种方式可读性太差,需自己知道哪一个数字对应的是什么状态,既然有对应的枚举类UserStatus,直接使用UserStatus类来代替Integer即可。

此时,数据库中的status还是int整型。此时,就存在一个java中的枚举类型和数据库中的整型的转换问题。

Mybatis的底层帮我们解决这个问题。

在application.yml中配置全局枚举处理器:
mybatis-plus:
configuration:
default-enum-type-handler: com,baomidou,mybatisplus.core.handlers.MybatisEnumTypeHandler
详情也可点击该链接(https://baomidou.com/guides/auto-convert-enum/)
UserStatus枚举类
package com.itheima.mp.enums;
import com.baomidou.mybatisplus.annotation.EnumValue;
import lombok.Getter;
@Getter
public enum UserStatus {
NORMAL(1,"正常"),
FROZEN(2,"冻结"),
;
@EnumValue
private final int value;
private final String desc;
UserStatus(int value, String desc) {
this.value = value;
this.desc = desc;
}
}

当我们测试时,返回的status是NORMAL。
如果我们想指定返回的数据,那么就
Spring Cloud微服务枚举、JSON及分页处理实现

最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



