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枚举处理器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家! 

相关文章

  • 简单学习Java+MongoDB

    简单学习Java+MongoDB

    本文给大家介绍的是如何简单的使用java+MongoDB实现数据调用的问题,非常的实用,有需要的小伙伴可以参考下
    2016-03-03
  • SpringBoot中YAML配置文件实例详解

    SpringBoot中YAML配置文件实例详解

    前面一直在使用properties配置文件,spring boot也支持yaml配置文件,下面这篇文章主要给大家介绍了关于SpringBoot中YAML配置文件的相关资料,需要的朋友可以参考下
    2023-04-04
  • Java常量池详解

    Java常量池详解

    下面小编就为大家带来一篇浅谈java常量池。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2021-09-09
  • Java中的SimpleDateFormat的线程安全问题详解

    Java中的SimpleDateFormat的线程安全问题详解

    这篇文章主要介绍了Java中的SimpleDateFormat的线程安全问题详解,sonar 是一个代码质量管理工具,SonarQube是一个用于代码质量管理的开放平台,为项目提供可视化报告, 连续追踪项目质量演化过程,需要的朋友可以参考下
    2024-01-01
  • 基于Java代码实现支付充值的通用流程

    基于Java代码实现支付充值的通用流程

    本文给大家分享一段java核心代码实现支付充值的通用流程,非常不错,具有参考借鉴价值,感兴趣的朋友一起看看吧
    2016-05-05
  • 解析springboot包装controller返回值问题

    解析springboot包装controller返回值问题

    这篇文章主要介绍了springboot包装controller返回值问题,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-12-12
  • 深入理解Spring AOP

    深入理解Spring AOP

    这篇文章主要介绍了深入理解Spring AOP,详细的介绍了spring aop的具体实现与理论
    2017-01-01
  • Java通过try释放资源的方法

    Java通过try释放资源的方法

    这篇文章主要介绍了Java通过try释放资源的方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-04-04
  • 智能 AI 代码生成工具 Cursor 安装和使用超详细教程

    智能 AI 代码生成工具 Cursor 安装和使用超详细教程

    Cursor.so 是一个集成了 GPT-4 的国内直接可以访问的,优秀而强大的免费代码生成器,可以帮助你快速编写、编辑和讨论代码,这篇文章主要介绍了智能 AI 代码生成工具 Cursor 安装和使用介绍,需要的朋友可以参考下
    2023-05-05
  • java分治思想之ForkJoin详解

    java分治思想之ForkJoin详解

    这篇文章主要为大家介绍了java分治思想之ForkJoin使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04

最新评论