@ResponseBody自动转换json,对于枚举类型,默认返回枚举类型的字符串,
public enum CpIsEnableEnum
{
ENABLE(1, "可用"),
DISABLE(2, "不可用");
}
上面的枚举类型,自动转换为json,输出为"isEnable":"ENABLE",
如何能够返回"isEnable":"可用"或者"isEnable":"不可用",这样的形式呢?
spirngmvc 转json用的是ObjectMapper,enum类型不能转成json
建议将enum转成成Map 返回一个Map
使用fastJSON ,在枚举中写toString 方法 如下
@Override
public String toString() {
return "{" + this.name() + ":" + description +'}';
}
description 就是你的中文描述
然后配置fastjson针对springmvc的转换器(网上一大堆)
注意在配置serializerFeature这个项时,添加一个WriteEnumUsingToString, 这表示用枚举toString输出.如果还不会私信我.