转换
//将JSON格式对象转换成为字符串
String str = JSON.toJSONString(Object);
//JSON格式List 转字符串
List list = new ArrayList();
String str = JSON.toJSONString(list);
//JSON格式Map转字符串
Map map = new HashMap();
String str = JSON.toJSONString(map);
//JSON格式字符串转Object
String str=“”
JSONObject jsonObject = JSON.parseObject(str);
或者
Person person = JSON.parseObject(str, Person.class);
//JSON格式字符串转List
List people = JSON.parseArray(“”, Person.class);
//JSON格式字符串转Map
Map<String,Person> map = JSON.parseObject(“”, new TypeReference<Map<String, Person>>() {});
// 将Object 转JSONObject
JSONObject jsonObject = (JSONObject) JSONObject.toJSON(obj);
//回去JSON数组
JSONObject result = …;
JSONArray datas = result.getJSONArray(“…”);
SerializerFeature枚举就行序列化时个性化定制
SerializerFeature.WriteMapNullValue 将null序列化出来
SerializerFeature.WriteNullStringAsEmpty 将null序列化为""
SerializerFeature.WriteNullNumberAsZero 数值字段如果为null,输出为0,而非null
jsonField注解
@JSONField(ordinal =0) 序列化字段的顺序,默认是0
@JSONField(name = “”) 用于解决属性名和key不一致的情况,当前端传过来的字段名不一样的时候,我们可以在字段名上加上这个注解
@JSONField(format = “yyyy-MM-dd HH:mm:ss”) 用在Date属性上,自动格式化日期
@JSONField(serialize = false) 是否要把这个字段序列化成JSON字符串,默认是true
@JSONField(deserialize = false) 字段是否需要进行反序列化,默认是true