【发布时间】:2017-09-23 10:40:40
【问题描述】:
我正在使用jackson Objectmapper将对象转换为字符串并将其作为varchar2保存到数据库中。我的代码是
AuditDataLog dataLog = new AuditDataLog();
ObjectMapper mapper = new ObjectMapper();
dataLog.setData(mapper.writeValueAsString(obj));
它作为 Varchar2 保存到数据库中。但是当我从数据库中检索此值并想使用 ObjectMapper 将其转换为 Map 时,它不能这样做。它会给出这样的异常
"com.fasterxml.jackson.databind.JsonMappingException: Can not instantiate value of type [map type; class java.util.HashMap"
这是我的代码
Map map = mapper.readValue(obj,HashMap.class));
obj 是数据库值,它是字符串。这是我要转换映射的字符串。
"\"MerOrder\":{\"cusAccPartyId\":\"4632\",\"cusAccParty\":{\"fullName\":\"Kariban\"},\"merAccPartyId\":\"4800\",\"merAccParty\":{\"fullName\":\"Golam Sarwer\"},\"season\":\"a455\",\"tfReceiveDate\":\"26 Apr 2017\",\"styleName\":\"a123\",\"styleNo\":\"s345\",\"sizeRange\":\"1\",\"merVariantValue\":{\"name\":\"XL-XS\"}}"
我该怎么办??
【问题讨论】:
-
您保存的不是哈希图。它是
MerOrder类型的对象