java - 如果java对象中不存在属性(应忽略json元素),如何使用Jackson将Json反序列化为java对象?

标签 java json jackson deserialization json-deserialization

我正在开发一个项目,其中Json合约可能会随着时间的推移而改变,如果他们对响应Json有新的属性,我在反序列化为java对象时可能会遇到异常,如何忽略新属性并仅反序列化java对象中存在的元素,我使用的是Jackson 1.9.13,此版本是否具有可以忽略Json元素的功能?

最佳答案

您可以通过两种方式执行此操作:

  1. 向类添加注释:

    @JsonIgnoreProperties(ignoreUnknown = true)
    class <class_name>{
      ....
      ....
    }
    
  2. 配置ObjectMapper:

    objectMapper.configure(Feature.FAIL_ON_UNKNOWN_PROPERTIES, false);
    

关于java - 如果java对象中不存在属性(应忽略json元素),如何使用Jackson将Json反序列化为java对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43773606/

相关文章:

java - 为什么我的加密字符串看起来只包含问号?

java - 如何使用 Java API 获取 Azure VM(非经典/资源托管)列表

java - 正确的 Java 包层次结构?

javascript 拆分和 JSON.parse

php - 如何解析select mysql查询得到的Json数据?

java - 更改 Spring Data Rest WebMvc 中的 Jackson 日期格式设置

java - 使用 Jackson 通过 @JsonUnwrapped 反序列化多态类型

java - dropwizard hibernate 命名查询未知

javascript - AngularJs ngRepeat系列?

java - 带有 Date 类型的 spring-cloud-feign Client 和 @RequestParam