Mybatis plus枚举处理器的具体使用

 更新时间:2024年03月25日 15:27:29   作者:厂里英才  
在开发中,数据库表中的字段很常见会使用枚举类型来表示一些固定的取值范围,本文主要介绍了Mybatis plus枚举处理器的具体使用,具有一定的参考价值,感兴趣的可以了解一下

1 前言

在我们的开发过程中,常常需要用一些数字来表示状态。比如说:1-正常,0-冻结。然而这样并不能做到见名知意,特别是状态较多的时候。当然我们可以通过定义常量类等方法来解决,不过这里我将介绍枚举的解决方法,及枚举处理器。

其实这个枚举处理器Mybatis就有,但是听说弄的一般般,所以我们这里主要介绍Mybatis plus的。

2 使用方法

2.1 在application.yml中添加配置

mybatis-plus:
 configuration:
  default-enum-type-handler: com.baomidou.mybatisplus.core.handlers.MybatisEnumTypeHandler

2.2 定义枚举类

@Getter
public enum UserStatus {
    NORMAL(1, "正常"),
    FROZEN(2, "冻结"),
    ;
    @EnumValue
    @JsonValue
    private final int value;
    private final String desc; //描述

    UserStatus(int value, String desc) {
        this.value = value;
        this.desc = desc;
    }
}

注解含义的解释

①@EnumValue:标记value是向数据库中写入的参数,毕竟在我们的数据库中仍然是整型存储的

②@JsonValue:如果不添加该注解,那么前端只能得到NORMAL或者FROZEN的字符串,如下:

"status": "NORMAL"

加了就会得到value的值(1或2),如下:

"status": 1

2.3 在实体类和赋值时中使用

实体类中:

public class User {
    //其它代码..
    /**
     * 使用状态(1正常 2冻结)
     */
    private UserStatus status;
}

赋值时:

lambdaUpdate()
    //其它代码...
    .set(remainBalance == 0, User::getStatus, UserStatus.FROZEN)
    .update();

到此这篇关于Mybatis plus枚举处理器的具体使用的文章就介绍到这了,更多相关Mybatisplus枚举处理器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家! 

相关文章

  • idea创建的idea项目时springframework出现红色的原因和解决方法

    idea创建的idea项目时springframework出现红色的原因和解决方法

    当使用 IntelliJ IDEA 创建 Spring Framework 项目时,springframework 出现红色可能是因为相关的 Spring Framework 依赖没有正确加载或项目的配置有问题,本文给大家介绍了一些常见的原因和解决方法,需要的朋友可以参考下
    2023-09-09
  • SpringBoot下实现session保持方式

    SpringBoot下实现session保持方式

    这篇文章主要介绍了SpringBoot下实现session保持方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • 解决Servlet4.0版本使用注解设置url但无法访问的问题

    解决Servlet4.0版本使用注解设置url但无法访问的问题

    在学习servlet过程中,使用web.xml文件配置servlet可以正常访问,但使用WebServlet注解时出现404错误,解决方法是在web.xml文件中将metadata-complete属性改为false,启动标注支持,然而该方法对我无效,最后通过重建项目和手动将新建的项目添加到tomcat服务器解决问题
    2024-10-10
  • Springboot 如何指定获取出 yml文件里面的配置值

    Springboot 如何指定获取出 yml文件里面的配置值

    这篇文章主要介绍了Springboot 如何指定获取出 yml文件里面的配置值操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • Maven中生命周期的具体使用

    Maven中生命周期的具体使用

    在 Maven 出现之前,项目构建的生命周期就已经存在,本文主要介绍了Maven中生命周期的具体使用,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09
  • java对象序列化操作实例分析

    java对象序列化操作实例分析

    这篇文章主要介绍了java对象序列化操作,结合实例形式分析了java对象序列化操作相关实现步骤与操作注意事项,需要的朋友可以参考下
    2019-11-11
  • JavaSwing后台播放音乐mp3

    JavaSwing后台播放音乐mp3

    这篇文章主要为大家详细介绍了JavaSwing后台播放音乐mp3,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-06-06
  • Java实现克鲁斯卡尔算法的示例代码

    Java实现克鲁斯卡尔算法的示例代码

    克鲁斯卡尔算法是一种用于求解最小生成树问题的贪心算法。这篇文章主要为大家详细介绍了Java实现克鲁斯卡尔算法的方法,需要的可以参考一下
    2023-04-04
  • java中使用url进行编码和解码

    java中使用url进行编码和解码

    这篇文章主要介绍了java中使用url进行编码和解码,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • java GUI编程之布局控制器(Layout)实例分析

    java GUI编程之布局控制器(Layout)实例分析

    这篇文章主要介绍了java GUI编程之布局控制器(Layout),结合实例形式分析了java GUI编程中布局控制器(Layout)具体功能、用法及相关操作注意事项,需要的朋友可以参考下
    2020-01-01

最新评论