如果我想通过ObjectMapper将字符串转换为POJO,我需要每次使用try-catch块包装我的代码并忽略错误。
ObjectMapper mapper = new ObjectMapper();
try {
mapper.readValue(body, A.class);
} catch (IOException e) {
// NOP
}
try {
mapper.readValue(body, B.class);
} catch (IOException e) {
// NOP
}
throw new RuntimeException("Could not parse the response body");
如果字符串可转换为POJO类,是否可以在调用方法readValue
之前进行检查?
答案 0 :(得分:0)
是的但它可能会返回null。 配置对象映射器不会因未知属性而失败。
mapper.configure(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES, false);
A a = mapper.readValue(body, A.class);
org.codehaus.jackson.map.DeserializationConfig