如何使用fastJson来解析JSON格式数据和生成JSON格式数据

时间:2023-03-09 15:22:58
如何使用fastJson来解析JSON格式数据和生成JSON格式数据

由于项目用到了JSON格式的数据,在网上搜索到了阿里的fastjson比较好用,特此记录fastjson用法,以备以后查询之用。

decode:

首先创建一个JSON解析类:

public class JsonParser {
private int devid;
public int getDevid() {
return devid;
}
public void setDevid(int devid) {
this.devid = devid;
}
}

在需要用到解析的地方创建一个对应的对象:

String str = "{"devid":12345}";
JsonParser jsonString = JSON.parseObject(str, JsonParser.class);

str参数为需要解析的字符串

然后只需调用该对象响应的getter()方法即可得到key对应的value:

int devid = jsonString.getDevid();
System.out.println(devid);//12345

encode:

同样创建一个相应的JSON类(简单起见,就以上面那个解析类做例子吧)

然后创建一个对象,并调用相应的setter()方法:

JsonParser json = new JsonPaser();
json.setDevid(12345);

设置完值之后调用该JSON库的toJSONString()方法讲该对象传入即可生成JSON格式的数据:

String str = JSON.toJSONString(json);
System.out.println(str); //{"devid":12345}

PS:通过测试发现,fastjson的功能比较强大,JSON格式的数据没有完全符合也能够顺利解析出来。

比如"{devid:12345}" 、 "{"devid":12345}"  、  "{"devid":"12345"}"  都可以正确解析