1、背景

java后端的枚举类型,要展示到前端,提供给用户进行下拉选择,java后端需要封装enum为json字符串提供给前端,需要首先将枚举类型转为list,然后再转为json字符串。

2、方案

方案也很简单,使用EnumSet.allOf(TestEnum.class),将数据获取到再塞到list中就可以了。

代码如下:

import com.alibaba.fastjson.JSONObject;
import java.util.ArrayList;
import java.util.EnumSet;
import java.util.HashMap;
import java.util.List;public enum TestEnum {TEST_ONE(1, "软件老王1"),TEST_TWO(2, "软件老王2"),TEST_THREE(3, "软件老王3"),TEST_FOUR(4, "软件老王4"),TEST_FIVE(5, "软件老王5");/*位置编码*/private Integer code;/*位置名称*/private String name;TestEnum(Integer code, String name) {this.code = code;this.name = name;}public static HashMap<Integer,String> getEnumMap() {HashMap<Integer, String> map = new HashMap<>();for (TestEnum testEnum : EnumSet.allOf(TestEnum.class)) {map.put(testEnum.code, testEnum.name);}return map;}public static List<HashMap<String,String>> getEnumList() {List<HashMap<String, String>> list = new ArrayList<>();for (TestEnum testEnum : EnumSet.allOf(TestEnum.class)) {HashMap<String, String> map = new HashMap<>();map.put("code",testEnum.code.toString());map.put("name",testEnum.name);list.add(map);}return list;}public static void main(String[] args) {System.out.println(JSONObject.toJSON(TestEnum.getEnumMap()));System.out.println( JSONObject.toJSON(TestEnum.getEnumList()));}
}

代码简要说明:

(1)getEnumMap,是获取map集合;

(2)getEnumList是获取list集合;

(3)两个方法均为静态方法(static),通过类.方法直接调用就可以了。


更多信息请关注公众号:「软件老王」,关注不迷路,软件老王和他的IT朋友们,分享一些他们的技术见解和生活故事。

java枚举转json相关推荐

  1. java 设置两个方法互斥_分享两个操作Java枚举的实用方法

    1. 前言 Java枚举在开发中是非常实用的.今天再来分析几个小技巧并且回答一些同学的的疑问.首先要说明的是我的枚举建立在以下的范式之中: 枚举统一接口范式 2. 如何把枚举值绑定的下拉列表 这种场景 ...

  2. Mybatis中使用Java枚举类型

    返回枚举集合JSON 定义枚举 package com.test.model;import java.util.HashMap; import java.util.Map;public enum St ...

  3. java查询枚举_查找Java枚举的最佳实践

    查找Java枚举的最佳实践 我们有一个REST API,客户端可以在其中提供表示Java Enums中服务器上定义的值的参数. 因此,我们可以提供一个描述性错误,我们将此valueOf(..)方法添加 ...

  4. java 枚举的继承_java中枚举类可以被继承吗?

    java 枚举类 java中,使用关键字enum来定义枚举类,枚举类是一个特殊的类,大部分功能和普通类是一样的,区别为: ● 枚举类继承了java.lang.Enum类,而不是默认的Object类.而 ...

  5. json java typeof_java解析json

    1:下载另外一个Java的小包就可以了: http://www.JSON.org/java/json_simple.zip 里面有源码和文档例题和编程的lib包:编程只需要json_simple.ja ...

  6. IDEA Java解析GeoJson.json文件

    IDEA Java解析GeoJson.json文件 一.遇到的问题 1. 无法导入成功 2. org.geotools.StyleFactory is not an ImageIO SPI class ...

  7. java如何读写json文件

    java如何读写json文件 在实际项目开发中,有时会遇到一些全局的配置缓存,最好的做法是配置redis数据库作为数据缓存,而当未有配置redis服务器时,读取静态资源文件(如xml.json等)也是 ...

  8. java 对象转json json转对象

    java 对象转json json转对象 import com.alibaba.fastjson.JSON;/*** * @title: fastjson * @author: wll* @since ...

  9. Java枚举类使用方式

    Java枚举类使用方式 单枚举定义 : /*** * @title: 单枚举定义* @author: wll* @since: 2021-1-27 14:47:54*/ public enum Jud ...

最新文章

  1. 使用python收取IMAP邮件即fox邮件且设置为已读
  2. PHP使用文件锁解决高并发问题示例
  3. (Kubernetes)k8s和docker的关系
  4. Swift 绘图板功能完善以及终极优化
  5. linux/android 脚本相关
  6. 第十一天2017/04/25(1、二叉树)
  7. 面试官,你考我那么多基础知识干什么?
  8. 信息的Raid存储方式,更安全的保障,更花钱的保障!
  9. 3-8:类与对象下篇——友元函数、友元类和内部类
  10. 大神微服务笔记全过程博客
  11. 计算机技能测试题12答案,计算机基本技能考试选择题及答_计算机一级考试练习题及答案...
  12. VScode使用记录二:Windows 7下安装GCC、使用VSCode编译代码
  13. Docker核心技术与实现原理
  14. Materials Studio多层聚合物的构建及data文件导出
  15. Python爬虫爬取中国大学慕课MOOC课程的课程评价信息(讨论信息),采用selenium动态爬取方法
  16. 干货干货~C语言版学生成绩管理系统【数据结构课程设计,百行代码实现功能强化版(内附源码)】
  17. 六一小学生计算机创新活动总结,小学科技创新活动总结4篇
  18. 北京大学MOOC 程序设计与算法(三)C++面向对象程序设计 期末考试
  19. Virtualbox主机和虚拟机之间文件夹共享及双向拷贝
  20. idea 集成python

热门文章

  1. java自定义注解实现校验对象属性是否为空
  2. 三个练手的软件测试实战项目(附全套视频跟源码)偷偷卷死他们
  3. Latch-Learned Arrangements of Three Patch Codes (1)
  4. git 免密登录设置
  5. mysql 之 设置最大连接数问题
  6. 【Win10】批量更改文件夹内文件名-学习记录
  7. 新建一个微信群,用于技术探讨
  8. 实时帧数手机_过度营销还是真实刚需?三分钟带你了解手机高刷新率的那些事...
  9. php手绘功能,Canvas的手绘风格图形库Rough.js-
  10. 将自动驾驶技术植入其中,Amazon Go狂甩阿里“淘咖啡”好几条街