目前前后端分离是越来越趋势化了,前后端交互一般都是用json数据格式,前端传一堆json数据过来,我们转化就成了一个问题,下面就根据转化为实体类和List相关做了一个案例:
首先使用的jar版本是:基本用的都是最新的版本:
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.2.3</version>
<classifier>jdk15</classifier><!-- jdk版本 -->
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.5</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.58</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.9.9</version>
</dependency>
对比的主类是:
public class JSONCompare {
public static void main(String[] args) {
toBean();
toList();
}
private static void toList() {
String json = "[\n" +
" {\n" +
" \"id\": \"124545721\",\n" +
" \"age\": \"23\",\n" +
" \"name\": \"张三\"\n" +
" },\n" +
" {\n" +
" \"id\": \"14545454\",\n" +
" \"age\": \"88\",\n" +
" \"name\": \"李四\"\n" +
" }\n" +
"]";
FastJsonUtil.toList(json);
System.out.println("------------------>>");
GsonUtil.toList(json);
System.out.println("------------------>>");
JacksonUtil.toList(json);
System.out.println("------------------>>");
JsonLibUtil.toList(json);
System.out.println("------------------>>");
}
public static void toBean(){
String json = "{\n" +
" \"name\": \"张三\",\n" +
" \"id\": \"23\",\n" +
" \"startTime\": \"1561904000000\",\n" +
" \"endTime\": \"2018-02-01 06:06:06\"\n" +
"}";
FastJsonUtil.toBean(json);
System.out.println("------------------>>");
GsonUtil.toBean(json);
System.out.println("------------------>>");
JsonLibUtil.toBean(json);
System.out.println("------------------>>");
JacksonUtil.toBean(json);
System.out.println("\n\