Java 使用fastjson将json字符串转为泛型对象
1、pom.xml引入fastjson依赖
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.62</version>
</dependency>
2、定义泛型类
ApiReponse.java
import lombok.Data;
@Data
public class ApiResponse<T> {
private String code;
private String message;
private String timestamp;
private T result;
}
UserResult.java
import lombok.Data;
@Data
public class UserResult {
private String userId;
private String username;
private String nickName;
}
3、使用JSON.parseObject方法进行转换
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference;
import com.baige.model.UserResult;
import com.baige.model.ApiResponse;
public class Application {
public static void main(String[] args) {
String jsonStr = "{ \"code\": 200, \"message\": \"操作成功\", \"timestamp\": \"1593412914189\", \"result\": {\"userId\": \"2301\", \"username\": \"测试员\", \"nickName\": null}}";
ApiResponse<UserResult> response = JSON.parseObject(jsonStr, new TypeReference<ApiResponse<UserResult>>(){});
System.out.println(response);
}
}
4、测试结果
ApiResponse(code=200, message=操作成功, timestamp=1593412914189, result=UserResult(userId=2301, username=测试员, nickName=null))
路漫漫其修远兮,吾将上下而求索
译文:在追寻真理方面,前方的道路还很漫长,但我将百折不挠,不遗余力地去追求和探索。
如果您有什么好的想法与方法,欢迎评论区留言,我们一起讨论~