【发布时间】:2019-06-07 13:17:35
【问题描述】:
通过以下注释,我可以告诉 Jackson 使用 Converter 类对反序列化数据进行额外的后处理:
@JsonDeserialize(converter = MyConverter.class)
public MyConstrainedMap property;
例如,以下转换器会将地图转换为自定义类型MyConstrainedMap:
public static class MyConverter extends StdConverter<Map<String, Object>, MyConstrainedMap> {
@Override
public MyConstrainedMap convert(Map<String, Object> rawMap) {
// ... check values
return new MyConstrainedMap(rawMap);
}
}
我的问题是:如果无法转换怎么办?抛出杰克逊的一个例外是有意义的,例如JsonMappingException,但该异常已被检查,convert 不允许任何已检查异常。
那么我应该怎么做呢。扔一个RuntimeException?
【问题讨论】:
标签: java json jackson jackson-databind