1. 依赖
<!-- 阿里JSON解析器 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.80</version>
</dependency>
2. JSON字符串转化成JSON对象语法
JSONObject json= JSON.parseObject(str);
或者
JSONObject json= JSONObject.parseObject(str);
以上两种功能上都一样。
3. 示例1:
{
"id":"1",
"name":"admin"
}
JSONObject json = JSON.parseObject(strJson);
Integer id = json.getInteger("id");
String name = json.getString("name");
logger.info("接收到前台发送的数据id->{} name - >{}",id,name);
或者反射用对象接收
User user = JSON.parseObject(strJson, User.class);
log.info("接收user{}",user);
3. 示例2:
{
"msg": "操作成功",
"code": 200,
"data": {
"id": "1",
"name": "iphone13",
"price": "4999"
}
}
JSONObject json = JSON.parseObject(StrJson);
Integer id = JSON.parseObject(json.getString("data")).getInteger("id");
4. 示例3: json转换为集合
{
"total": 3,
"rows": [
{
"id": "1",
"name": "iphone13",
"price": "4999"
},
{
"id": "1",
"name": "iphone14",
"price": "5999"
},
{
"id": "1",
"name": "iphone15",
"price": "6999"
}
],
"code": 200,
"msg": "查询成功"
}
JSONObject json = JSON.parseObject(strJson);
JSONArray jsonArray = json.getJSONArray("rows");
List<Goods> goodsList = JSONObject.parseArray(jsonArray.toJSONString(), Goods.class);