1.net.sf.json
(1)引入依赖
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.4</version>
<classifier>jdk13</classifier>
</dependency>
(2)json格式String转List<实体类>
@Test
public void jsonStringToJsonArray(){
String str="[{\"groupId\":\"4028975875868f43017590ee6ab20147\",\"jobId\":\"7\",\"status\":\"SUCCEEDED\",\"name\":\"collect at RestController.scala:290\",\"description\":\"None\",\"completionTime\":\"2020年11月04日 09时44分27秒\",\"submissionTime\":\"2020年11月04日 09时44分26秒\"},{\"groupId\":\"4028975875868f43017590ee6ab20147\",\"jobId\":\"6\",\"status\":\"ERROR\",\"name\":\"collect at RestController.scala:299\",\"description\":\"None\",\"completionTime\":\"2020年11月04日 09时44分27秒\",\"submissionTime\":\"2020年11月04日 09时44分26秒\"}]";
JSONArray jsonArray = JSONArray.fromObject(str);
//JobExecuteInfo为javabean类,有get,set方法
List<JobExecuteInfo> list = JSONArray.toList(jsonArray, JobExecuteInfo.class);
}
2.alibaba.fastjson.JSON
(1)引入依赖
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.66</version>
</dependency>
(2)list<实体类>转json字符串
public static String listToJsonString(List list){
JobExecuteInfo job1 = new JobExecuteInfo("4028975875868f43017590ee6ab20147", "7", "SUCCEEDED", "collect at RestController.scala:290", "None", "2020年11月04日 09时44分27秒", "2020年11月04日 09时44分26秒");
JobExecuteInfo job2 = new JobExecuteInfo("4028975875868f43017590ee6ab20147", "6", "ERROR", "collect at RestController.scala:299", "None", "2020年11月04日 09时44分27秒", "2020年11月04日 09时44分26秒");
List list=new ArrayList();
list.add(job1);
list.add(job2);
return JSON.toJSONString(list);
}
3.com.google.gson.Gson
(1)引入依赖
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.2.4</version>
</dependency>
(2)list<实体类>转json字符串
@Test
public void GsonTest(){
JobExecuteInfo job1 = new JobExecuteInfo("4028975875868f43017590ee6ab20147", "7", "SUCCEEDED", "collect at RestController.scala:290", "None", "2020年11月04日 09时44分27秒", "2020年11月04日 09时44分26秒");
JobExecuteInfo job2 = new JobExecuteInfo("4028975875868f43017590ee6ab20147", "6", "ERROR", "collect at RestController.scala:299", "None", "2020年11月04日 09时44分27秒", "2020年11月04日 09时44分26秒");
List list=new ArrayList();
list.add(job1);
list.add(job2);
Gson gson = new Gson();
System.out.println(gson.toJson(list));
}