我正在使用Java7。我也使用 com.fasterxml.jackson.databind.objectmapper
将json转换为java对象。
当我最初将java对象转换为json时,我会执行以下操作:
List<QuoteDTO> selectedQuoteDTOs = ...
String jsonSelectedQuoteDTOs = mapper.writeValueAsString(selectedQuoteDTOs);
当我将json转换回java对象时,我会执行以下操作:
List<QuoteDTO> selectedQuoteDTOs = mapper.readValue(jsonSelectedQuoteDTOs, List.class);
然而 selectedQuoteDTOs
不属于类型 QuoteDTO
,而不是 LinkedHashMap
.
导致我出现以下错误:
java.lang.classcastexception:无法将java.util.linkedhashmap转换为com..model.quotedto
当我这样做时:
for (QuoteDTO selectedQuoteDTO : selectedQuoteDTOs) {
问题
在将json转换为java时,如何将对象转换为 List<QuoteDTO>
,而不是 List<LinkedHashMap>
?
这个 LinkedHashMap
密钥是 QuoteDTO
成员变量。
1条答案
按热度按时间30byixjq1#
试试这个。这样就可以了