java枚举转json

本文介绍了在Java后端如何将枚举类型转换为JSON字符串,以便于前端使用。主要方案是利用EnumSet.allOf()方法获取枚举值并转换为List,再转化为JSON。提供了静态方法getEnumMap和getEnumList用于此操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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>
Java中的Map是一种非常方便的数据结构,它可以存储键值对,这些键值对可以根据需要添加、删除或修改。而JSON是一种轻量级的数据交换格式,它被广泛用于跨平台和跨语言的数据传输。Map换为JSON是开发过程中常用的操作之一,下面简单介绍一下如何实现Map换为JSON。 在Java中,我们可以使用第三方库Gson或者Jackson来实现Map换为JSON。其中,Gson是Google提供的开源类库,它提供了fromJson、toJson、toJsonTree等方法,可以将Java对象换为JSON格式的字符串或解析JSON格式的字符串并生成Java对象。Jackson是另一个非常优秀的Java序列化框架,它也提供了将Java对象换为JSON格式的方法,并提供了很多高级特性,如对JSON数据中的日期格式、NULL值、枚举类型等的处理。 下面给出一个使用Gson进行Map换为JSON的例子: ``` Map<String, Object> map = new HashMap<>(); map.put("name", "Tom"); map.put("age", 20); String jsonStr = new Gson().toJson(map); ``` 在上面的代码中,我们首先创建了一个Map对象,并向其中添加了一些键值对。然后使用Gson的toJson方法将Map对象换为JSON格式的字符串。这个jsonStr字符串的结果是: ``` {"age":20,"name":"Tom"} ``` 如果使用Jackson进行Map换为JSON,可以使用如下代码: ``` Map<String, Object> map = new HashMap<>(); map.put("name", "Tom"); map.put("age", 20); String jsonStr = new ObjectMapper().writeValueAsString(map); ``` 在上面的代码中,我们使用了Jackson中的ObjectMapper类,并调用其writeValueAsString方法将Map对象换为JSON格式的字符串。这个jsonStr字符串的结果与使用Gson换的结果相同。 综上所述,无论你选择使用Gson还是Jackson,Map换为JSON都非常方便。通过简短的代码就可以将Java程序中的Map对象换为可用于网络传输的JSON格式数据。在实际开发中,我们可以选择适合自己的方法和工具来完成Map换为JSON的操作,提高我们的开发效率和代码质量。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

软件老王

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值