在Java开发中经常遇到数据对接的情形,通过接口请求返回json数据,然后对数据进行解析处理,为了通用,经常会有一个通用返回结果类
如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| public class ReturnResult<T> { private Boolean status; private String message; private T data;
public Boolean getStatus() { return status; }
public void setStatus(Boolean status) { this.status = status; }
public String getMessage() { return message; }
public void setMessage(String message) { this.message = message; }
public T getData() { return data; }
public void setData(T data) { this.data = data; }
public ReturnResult(Boolean status, String message, T data) { this.status = status; this.message = message; this.data = data; }
public static <T> ReturnResult<T> getSuccess(String message, T t){ return new ReturnResult<>(true,message,t); } }
|
其中包含有泛型,当直接使用fastjson解析,实体类使用该工具类时就会出现其中的泛型未转换成功的情况。
此时只要这么写就可以转换成功了
1 2
| ReturnResult<User> returnResult = JSONObject.parseObject(ss, new TypeReference<ReturnResult<User>>(){});
|
其中泛型的数据也会转换成功