springmvc 枚举类转json

Posted QQ_851228082

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springmvc 枚举类转json相关的知识,希望对你有一定的参考价值。

springmvc中,经常用到枚举类转json。
比如一个枚举类

public enum MyEnum
 	INSTANCE1("code1",“name1”),
    INSTANCE2("code1",“name1”),
    ;
	private String code;
    private String name;


springmvc json转换器默认使用jackson,序列化的结果是

[0:"INSTANCE1",1:"INSTANCE2"]

但一般期望序列化后结果是

["code":"code1","name":"name1","code":"code2","name":"name2"]

只能使用fastjon手动转一下了,首先在类上添加serializeEnumAsJavaBean

@JSONType(serializeEnumAsJavaBean = true)
public enum MyEnum

然后controller方法中,大体写法如下

@RequestMapping("path1/path2")
public Object m1() 
  final JSONArray json = JSONObject.parseArray(JSONObject.toJSONString(MyEnum.values()));
  return  json;
 

很明显,这样的写法不优雅,但临时还没找到更好地办法。

以上是关于springmvc 枚举类转json的主要内容,如果未能解决你的问题,请参考以下文章

springmvc 序列化枚举类

枚举类转集合List

java实体类怎么转换成json。

C# 实体类转json数据过滤掉字段为null的字段

实体类转json 和 json转实体类

实体类转Json的2种方法