下面是使用fastjson写的代码` private <T> List<T> getArray(Object obj,Class<T> clazz){ String s = getJSONString(obj); return JSON.parseArray(s,clazz); } public <T> T getData(TypeReference<T> tTypeReference) { String s = this.getJSONString(this.getData()); return JSON.parseObject(s,tTypeReference); }`请将这个代码转为使用jsckson的
时间: 2023-11-28 08:49:26 浏览: 80
下面是使用jackson写的代码:
```
private <T> List<T> getArray(Object obj, Class<T> clazz) {
String s = getJSONString(obj);
ObjectMapper mapper = new ObjectMapper();
try {
return mapper.readValue(s, mapper.getTypeFactory().constructCollectionType(List.class, clazz));
} catch (JsonProcessingException e) {
e.printStackTrace();
}
return null;
}
public <T> T getData(TypeReference<T> tTypeReference) {
String s = this.getJSONString(this.getData());
ObjectMapper mapper = new ObjectMapper();
try {
return mapper.readValue(s, tTypeReference);
} catch (JsonProcessingException e) {
e.printStackTrace();
}
return null;
}
```
需要注意的是,在 jackson 中,需要使用 `ObjectMapper` 对象来进行 JSON 解析,在解析 List 类型时,需要使用 `constructCollectionType` 方法来构造 List 类型的 TypeReference。
阅读全文