IDEA插件分享 - enum-quick-generate 实现枚举类自动生成

在这里插入图片描述

😄 19年之后由于某些原因断更了三年,23年重新扬帆起航,推出更多优质博文,希望大家多多支持~
🌷 古之立大事者,不惟有超世之才,亦必有坚忍不拔之志
🎐 个人CSND主页——Micro麦可乐的博客
🐥《Docker实操教程》专栏以最新的Centos版本为基础进行Docker实操教程,入门到实战
🌺《RabbitMQ》本专栏主要介绍使用JAVA开发RabbitMQ的系列教程,从基础知识到项目实战
🌸《设计模式》专栏以实际的生活场景为案例进行讲解,让大家对设计模式有一个更清晰的理解
如果文章能够给大家带来一定的帮助!欢迎关注、评论互动~

IDEA插件分享 - enum-quick-generate 实现枚举类自动生成

  • 前言
  • 安装插件
  • 开始使用
  • 结语

前言

在日常JAVA项目开发过程中,我们编写的实体类会有很多状态、类型相关的字段需要枚举实现,从而需要创建对应的枚举类,如果字段类型较多,那么这个创建枚举类的过程还是让我们感到很麻烦的,那么这里分享一款IDEA插件enum-quick-generate 就可以根据我们的内容自动生成枚举类

安装插件

打开IDEA - 属性 -插件,如下图:
在这里插入图片描述
注意:枚举类依赖lombok插件

开始使用

安装完成后,我们编写一个订单类 Order

@Data
public class Order {private Long id;private String orderNo;/*** 支付状态 逗号分隔* 0:no,1:yes*/private Integer payStatus;/*** 订单状态 空格分隔* 0:待发货 1:已发货 2:已确认 3:已评价*/private Integer status;/*** 订单状态 分号分隔* 0:申请退款; 1:退款中; 2:退款完成;*/private Integer refundStatus;
}

注释规则(不区分中英文):

  • 枚举属性隔符: 冒号【 : 】
  • 枚举对分隔符: 分号【 ; 】逗号【 , 】以及空格

1、选择我们的注释说明右键选择generate然后选择此插件
在这里插入图片描述
2、输入我们需要的枚举类名称

在这里插入图片描述
3、OK确认后插件会帮我们自动生成枚举并且设置到我们的剪切板, 我们只需要点击项目对应存放的包粘贴即可创建枚举类文件

我们一起来看看生成的效果:

PayStatusEnum

@Getter
@AllArgsConstructor
public enum PayStatusEnum {NO(0, "no"),YES(1, "yes");private final Integer code;private final String desc;public static PayStatusEnum getEnumByCode(Integer code) {for (PayStatusEnum e : PayStatusEnum.values()) {if (e.code.equals(code)) {return e;}}return null;}
} 

OrderStatusEnum

@Getter
@AllArgsConstructor
public enum OrderStatusEnum {ENUM0(0, "待发货"),ENUM1(1, "已发货"),ENUM2(2, "已确认"),ENUM3(3, "已评价");private final Integer code;private final String desc;public static OrderStatusEnum getEnumByCode(Integer code) {for (OrderStatusEnum e : OrderStatusEnum.values()) {if (e.code.equals(code)) {return e;}}return null;}
} 

RefundStatusEnum

@Getter
@AllArgsConstructor
public enum RefundStatusEnum {ENUM0(0, "申请退款"),ENUM1(1, "退款中"),ENUM2(2, "退款完成");private final Integer code;private final String desc;public static RefundStatusEnum getEnumByCode(Integer code) {for (RefundStatusEnum e : RefundStatusEnum.values()) {if (e.code.equals(code)) {return e;}}return null;}
} 

大家会发现插件已经帮我们生成了相关的枚举类,有特别需求的再进行代码调整即可;

结语

本文主要分享博主在日常工作中,使用到的枚举类生成工具,当然插件市场也有很多此类功能插件,大家可以自由选择,有了它根据注释一键生成枚举类,让我们从此远离加班,告别秃头! 😂😂

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/829163.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

代码随想录算法训练营DAY38|C++动态规划Part.1|动态规划理论基础、509.斐波那契数、70.爬楼梯、746.使用最小花费爬楼梯

文章目录 动态规划理论基础什么是动态规划动态规划的解题步骤DP数组以及下标的含义递推公式DP数组初始化DP数组遍历顺序打印DP数组动态规划五部曲 动态规划应该如何debug 509.斐波那契数什么是斐波那契数列动态规划五部曲确定dp数组下标以及含义确定递推公式dp数组如何初始化确…

深入理解Java消息中间件-组件-绑定

引言: 在消息队列的使用过程中,消息的绑定是实现消息路由和分发的重要环节。通过消息的绑定,可以将消息从交换器路由到队列中,实现消息的可靠传递和处理。本文将介绍消息的绑定的实现原理以及其背后的原理。 一、实现原理 消息的…

碎碎念,有关果园就业生涯应该如何规划

这篇只是为了揭开一些就业现状,主要是计算机和电子信息方向,都是我和身边人血泪一般的教训,想到什么写什么。 实习篇 实习非常非常的重要,一定要跳出学生思维,如果没把握保研就不要把大量时间浪费在追求高绩点上&…

Java23种设计模式-行为型模式之中介者模式

中介者模式(Mediator Pattern),也称为仲裁者模式,定义了一个中介对象,用以封装一系列对象之间的交互。中介者使各个对象不需要显示地相互引用,从而使耦合度降低,而且可以独立地改变它们之间的交…

数据分析:甲基化分析-从DNA methylation的IDAT文件到CpG site的Beta values

介绍 DNA Methylation和疾病的发生发展存在密切相关,它一般通过CH3替换碱基5‘碳的H原子,进而调控基因的转录。常用的DNA methylation是Illumina Infinium methylation arrays,该芯片有450K和850K(也即是EPIC)。 该脚…

Mac虚拟机装Windows Mac环境安装Win虚拟机教程 macbookpro安装windows虚拟机

在如今多元的数字时代,我们经常需要在不同的操作系统环境下进行工作和学习。而对于Mac用户来说,有时候需要在自己的电脑上安装Windows操作系统,以体验更多软件及功能,而在Mac安装Windows虚拟机是常用的一种操作。下面就来看看Mac虚…

学习 Rust 的第十二天:如何使用向量

大家好, 今天我们来看看计算机科学中的一种基本数据结构,即向量。向量在 Rust 中扮演着至关重要的角色,它在各种编程任务中都发挥着重要作用。像 Rust 这样的系统编程语言以其对安全性和性能的强调而闻名,因此向量提供了一些强大…

flutter开发实战-build apk名称及指令abiFilters常用gradle设置

flutter开发实战-build apk名称及指令abiFilters常用gradle设置 最近通过打包flutter build apk lib/main.dart --release,发现apk命名规则需要在build.gradle设置。这里记录一下。 一、apk命名规则 在android/app/build.gradle中需要设置 android.applicationVa…

数字身份管理:Facebook如何利用区块链技术?

随着数字化进程的加速,个人身份管理已成为一个关键议题。在这方面,区块链技术正在逐渐展现其巨大潜力。作为全球最大的社交媒体平台,Facebook也在积极探索和应用区块链技术来改进其数字身份管理系统。本文将深入探讨Facebook如何利用区块链技…

回归与聚类——模型保存与加载(五)

sklearn模型的保存和加载API from sklearn.externals import joblib保存:joblib.dump(rf,‘test.pkl’)加载:estimator joblib.load(‘test.pkl’) 线性回归的模型保存加载案例 获取数据、划分数据集、标准化、预估器、保存模型、得出模型、模型评估 /…

巴西游戏市场海外营销洞察

巴西作为南美洲最大的国家,近年来在游戏产业领域取得了显著的发展,2023年巴西整体移动游戏市场收入规模超60亿元,显示出强劲的市场活力。巴西游戏市场以其庞大的用户基础,不断增长的消费能力以及日益完善的产业环境,吸…

VSCODE通过SFTP链接VM进行开发

在vscode插件里面搜索sftp,安装。 安装之后,按ctrlshiftp,找到sftp的config 然后填写刚刚的IP,然后是你的用户名密码 如果是通过密钥链接的话就是这样配置 然后切换到这个sftp的tab里面 然后在你的项目右键,然后选择op…

el-date-picker 禁用时分秒选择(包括禁用下拉框展示)

2024.04.26今天我学习了对el-date-picker进行禁用时分秒, 在使用el-date-picker组件的时候,我们有可能遇到需要把时分秒的时间固定,然后并且不能让他修改: 1714120999296 比如右上角的这个时间,我们要给它固定是‘08:…

CSP初赛知识精讲--线性数据结构

第十五节 线性树形结构 基础知识 线性表 线性表是指由n个具有相同特性的数据元素组成的有限序列,是最基本、最简单,也是最常用的一种数据结构。队列、栈、链表、哈希表等数据结构逻辑上都属于线性表。一般来讲,表中数据之间的关系是一对一的…

WPS Word自动编号转文本

原理 使用WPS自带的宏功能,一键替换 过程 调出"开发工具"选项 文件->选项->自定义功能区->选中开发工具->确认 创建宏 工具 -> 运行宏 编写宏 在弹出来的框里,粘贴代码 如果弹窗类似如下,这是JS宏 则…

Spark-机器学习(5)分类学习之朴素贝叶斯算法

在之前的文章中,我们学习了回归中的逻辑回归,并带来简单案例,学习用法,并带来了简单案例。想了解的朋友可以查看这篇文章。同时,希望我的文章能帮助到你,如果觉得我的文章写的不错,请留下你宝贵…

日期操作类 + http、https 请求工具类 + 开发环境 忽略 SSL 验证工具类 + 二维码工具类

日期操作类 package com.pay.common.util;import java.text.SimpleDateFormat; import java.util.Date; /*** 日期操作类* 创建者 科帮网* 创建时间 2017年7月31日*/ public class DateUtils {private final static SimpleDateFormat sdfYear new SimpleDateFormat("yyy…

阿里云企业邮箱API的使用方法?调用限制?

阿里云企业邮箱API性能如何优化?配置邮箱API的优势? 阿里云企业邮箱以其稳定、高效和安全的特点,受到了众多企业的青睐。而阿里云企业邮箱API的开放,更是为企业提供了更加灵活、便捷的管理和操作方式。下面,我AokSend…

前端文本框插入标签(错误新增红色错误文字)

近期产品需求遇到一个问题,需要在查询输入框输入内容之后,需要 提示由后端返回不匹配文字,并且标红 有几种解决方案 1、最简单的方法是在输入框外,如它的下面新增 错误提示文字信息,最后正则匹配替换高亮错误文字 2…

用过最佳的wordpress模板

西瓜红,作为一种充满活力和激情的颜色,总是能给人留下深刻的印象。当这种鲜艳的色彩与经典的设计元素相结合时,就能打造出一款既时尚又实用的WordPress企业模板。今天,我们向您隆重推荐这款西瓜红经典配色WordPress企业模板。 这…