maven项目
pom.xml
com.alibaba fastjson 2.0.26 junit junit 4.13.2 test org.projectlombok lombok RELEASE compile
实体类测试
@Data
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
public class Student {
private Integer id;
private String name;
private Integer age;
}
先了解下JSONObject 继承JSON 实现Map


JSONArray继承JSON 实现List

JSONObject一般称为JSON对象 JSONArray称为JSON数组
而我们经常需要将
自定义对象 JSON对象(JSONObject)或数组(JSONArray) String(一般叫JSON字符串)
这三者之间经常需要做转换
在前后端交互中无论返回的是JSON字符串 还是JSON对象(JSONObject)或者JSON数组(JSONArray)看起来都是一样的





就是次序好像乱了


数组好像都正常
在实体类上加@JSONType(order={"xxx","xxx","xxx"})进行排序

所以这点,在一些特殊场合需要注意

某种时候也可以这么干
MapresultMap = new LinkedHashMap<>(); resultMap.put("id", s.getId()); resultMap.put("name", s.getName()); resultMap.put("age", s.getAge());
上面例子就是说其实返回JSON 或者JSON字符串(String类型) 关系不大,以及排序问题
JSONObject和JSONObject都是JSON的子类 相对来说 子类的方法更多一些
所以
在对对象与JSON对象和String三者转换时候常常会选用JSONObject
在对数组与JSON数组和String三者转换时候常选用JSONArray
对象 转JSON 或者String

JSON字符串 转对象


演示下稍微复杂些的



