当反序列化时遇到待序列化对象(JSON
或byte[]
)转成list对象的时候,我们期望的是List<POJO>
,可是实际是转成了List<LinkedHashMap>
对象,当我使用的时候会抛出异常
java.lang.ClassCastException: java.util.LinkedHashMap
cannot be cast to xxx.xxx.xxx.dto.POJO
这时可以使用方法如下
架包下载地址:https://mvnrepository.com/artifact/com.fasterxml.jackson
引入的类
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
使用方式
ObjectMapper mapper = new ObjectMapper();
POJO pojo = mapper.convertValue(mapObject, new TypeReference<POJO>() { });
// or:
List<POJO> pojos = mapper.convertValue(listmapObjects, new TypeReference<List<POJO>>() { });
这样就可以转换成我们想要的对象了。