List转Json
List<User> users = new ArrayList();
String str = JSON.toJSONString(users); // List转json
Json 转List 方法一
String json = ""; //获取的Json数据
List<User> users = JSON.parseObject(json, new TypeReference<List<User>>(){}); // Json 转List
Json 转List方法二
List<User> users = JSON.parseArray(json, User.class);
Json enum
fastjon默认对enum对象使用WriteEnumUsingName属性,因此会将enum值序列化为其Name。
如果将节省enum序列化后的大小,可以将enum序列化其ordinal值,保存为int类型。fastJson在反序列化时,如果值为int,则能够使用ordinal值匹配,找到合适的对象。
fastjson要将enum序列化为ordinal只需要禁止WriteEnumUsingName feature。
首先根据默认的features排除WriteEnumUsingName,然后使用新的features序列化即可。
int features = SerializerFeature.config(JSON.DEFAULT_GENERATE_FEATURE, SerializerFeature.WriteEnumUsingName, false)
JSON.toJSONString(obj, features, SerializerFeature.EMPTY);