fastjson解析json文本

fastjson解析json文本

背景:

项目中经常会用到解析JSON文本,有的同事特别依赖公司自己封装的工具类,离开了工具类就不知道怎么去解析,下面简单的介绍一下用阿里的fastjson去解析文本

引入Maven依赖

注:尽量使用1.2.69以上版本,69以下版本有重大漏洞。

<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.72</version>
</dependency>

简单举例:

假设下面是待解析String 类型的json文本jsonParams:

{
	"retCode": "0000",
	"retInfo": "PEND",
	"account": "815588888",
	"status": 1,
	"list": [{
			"userId": "232ed6e1878e456cb990d496c282badd",
			"phone": "123"
		},
		{
			"userId": "8a082bca79304ce78330c492370f8974",
			"phone": "666"
		}
	]
}
  • 从String 类型的json文本里获取某个字段

// 首先将String类型的文本转化成JSONObject 
JSONObject jsonObject = JSON.parseObject(jsonParams);

// 获取jsonObject中String类型的字段retCode
String retCode = jsonObject.getString("retCode");

// 获取jsonObject中Integer类型的字段status
Integer status = jsonObject.getInteger("status");

// 获取jsonObject中集合类型的字段list
JSONArray array = jsonObject.getJSONArray("list");

  • 如果用实体去接收,可以自己定义一个相应的类(假设是Product)

 Product product = JSON.parseObject(jsonParams, Product.class);
 
  • JSON.toJSONString(Object object)可以把Object 类型的实体转换成JSON字符串。

String jsonString = JSON.toJSONString(product);

  • 里面有很多高度封装好的方法可以直接去使用,很方便,大家可以自己去探索一下,根据自己的需要去封装一个工具类。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值