需要的jar包:
工具包为阿里fastjson
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.44</version>
</dependency>
具体实现DEMO:
LocalDateTime now = LocalDate.now().atStartOfDay();
// java.time.LocalDateTime --> java.util.Date
Date date = Date.from(now.atZone(ZoneId.systemDefault()).toInstant());
Date date1 = Date.from(now.plusDays(1).atZone(ZoneId.systemDefault()).toInstant());
ActivityTemplatePO templatePO = new ActivityTemplatePO(1,1,date,date1,"NO", date);
// 对象 转 JSON对象
Object toJSON = JSONObject.toJSON(templatePO);
System.out.println(toJSON);
// 对象 转 JSON串
String jsonStr = JSONObject.toJSONString(templatePO);
System.out.println(jsonStr);
// JSON串 转 对象
ActivityTemplatePO templatePO1 = JSON.parseObject(jsonStr, ActivityTemplatePO.class);
System.out.println(templatePO1);
//JSON内容为{"activityTemplateNo":1,"createTime":1568131200,"endTime":1568217600,"id":724,"startTime":1568131200,"status":"NO"}
JSONObject map=new JSONObject();
map.put("activityTemplateNo", "1");
map.put("createTime", "1568131200");
map.put("startTime", "1568217600");
map.put("endTime", "1568131200");
map.put("id", "724");
map.put("status", "NO");
// JSON 转 对象
ActivityTemplatePO toJavaObject = JSON.toJavaObject(map, ActivityTemplatePO.class);
System.out.println(toJavaObject.toString());
// JSON 转 数组
String jsonStr2 = "[{\"activityTemplateNo\":\"1\",\"createTime\":\"1568131200\",\"endTime\":\"1568217600\",\"id\":\"1\",\"startTime\":\"1568131200\",\"status\":\"NO\"}" +
",{\"activityTemplateNo\":\"2\",\"createTime\":\"1568131200\",\"endTime\":\"1568217600\",\"id\":\"2\",\"startTime\":\"1568131200\",\"status\":\"NO\"}" +
",{\"activityTemplateNo\":\"3\",\"createTime\":\"1568131200\",\"endTime\":\"1568217600\",\"id\":\"3\",\"startTime\":\"1568131200\",\"status\":\"NO\"}" +
",{\"activityTemplateNo\":\"4\",\"createTime\":\"1568131200\",\"endTime\":\"1568217600\",\"id\":\"4\",\"startTime\":\"1568131200\",\"status\":\"NO\"}]";
JSONArray templateDetails = JSONObject.parseArray(jsonStr2);
//将JSON数组转换成数组对象
List<ActivityTemplatePO> list = templateDetails.toJavaObject(templateDetails, List.class);
List list2 = JSON.toJavaObject(templateDetails, List.class);
if (list.size() > 0) {
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
}
System.out.println(list2);
}
原文链接: https://onlyou.blog.csdn.net//article/details/100745450