【Java学习】com.alibaba的fastjson使用(持续添加)

1.JSON换实体类T

1 //json是JSONObject类型,将json转成实体类T
2 T tt = JSONObject.parseObject(json.toJSONString(), T.class);

2.将json某字段转成list

1 //先转成JSONArray,再转成list<T>
2 JSONArray jsonArray = json.getJSONArray("listKey");
3 List<T> tList = (List<T>) JSONArray.parseArray(jsonArray .toString(), T.class);

 3.将json转成map

1 //获取传过来的map
2 JSONObject paramsJson=***;
3 Map<String, String> params = JSONObject.parseObject(paramsJson.toJSONString(), new TypeReference<Map<String, String>>() {});

Pom文件依赖

<properties>
<fastjson.version>1.2.47</fastjson.version>
</properties>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>${fastjson.version}</version>
</dependency>

FastJson被称为目前Java语言中最快的JSON库。

主要特点(参照W3Cschool):

  • 快速FAST (比其它任何基于Java的解析器和生成器更快,包括jackson)
  • 强大(支持普通JDK类包括任意Java Bean Class、Collection、Map、Date或enum)
  • 零依赖(没有依赖其它任何类库除了JDK)

功能:

  1. 将Java对象转换为Json字符串  String json字符串 = JSON.toJSONString(Java对象/对象数组);
  2. 将Json字符串转换为Java对象  Java对象/Java对象列表 = JSON.parseObject(字符串)

 转载:https://www.cnblogs.com/lgqrlchinese/p/12876355.html

原文地址:https://www.cnblogs.com/gtea/p/13817663.html