如何解决如何使用 Jackson 反序列化单个 JSON 字段,具有 JSON 路径和 DTO?
具有 JSON 路径字符串,如“foo.bar[1].baz”,以及 Java 中相应的 DTO 类,我如何实现通用方法,该方法将反序列化单个字段,如 ObjectMapper#readValue(String,Class) ? “相应的 DTO”是指包含路径的类型的 DTO,而不是 json 路径对象的类型。换句话说,DTO 包含某种类型的 foo 字段,并且该类型具有带有 baz 字段的对象的 bar 列表。 例如
public class MyDto {
@JsonDeserialize(using = MyDeserializer.class)
public LocalDate date;
public String str;
}
public class Example {
public static void main(String[] args){
String json = "{\"date\":\"2021-01-01\",\"str\":\"bar\"}";
Object deserializedPath = Example.deserialize(json,"date",MyDto.class);
}
public static Object deserialize(String json,String path,Class<?> dto) {
// Here path should be deserialized with MyDeserializer(in this example),// and it should work for all kinds of JSON/DTO regardless of deserializer.
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。