前言
本文介绍如何运用alibaba.fastjson将JSON字符串转为指定的Java对象。
准备
下载com.alibaba.fastjson的jar包。
可在网站MavenRepository: [https://mvnrepository.com/artifact/com.alibaba/fastjson] 中下载Jar包或拷贝dependency。
若是普通项目则将下载的jar包引入项目;若是Maven项目,在pom.xml中添加如下内容引入:
<!-- https://mvnrepository.com/artifact/com.alibaba/fastjson -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.58</version>
</dependency>
代码实现
举例:JSON字符串与Java类User相对应,转换方法如下:
User user = JSON.parseObject(jsonStr, new TypeReference<User>(){});
说明:TypeReference是处理泛型反序列化的工具类。
注意:要转的JSON字符串的key要和Java类中的成员变量名相同,且提前处理如自定义类型、日期类型、枚举类型等特殊值(若类型不符会抛出异常:com.alibaba.fastjson.JSONException: syntax error, expect {, actual string
)。