如何忽略 JSON 响应中列表中的特定字段

Posted

技术标签:

【中文标题】如何忽略 JSON 响应中列表中的特定字段【英文标题】:How do i ignore a specific field from an list in JSON response 【发布时间】:2021-03-02 06:58:30 【问题描述】:

我试图在反序列化期间忽略列表中的指定字段。我不确定如何为列表中的字段执行此操作。下面是我的 json 和响应类

示例 json


  "key": 
    "rowKey": "123"
  ,
  "names": [
    
      "firstName": "JON ",
      "firstNameFormatted": "JON"
    
  ]

响应类

@AllArgsConstructor
@NoArgsConstructor
@Getter
@Setter
@ToString
public class Data 


    private Map<String,Object> key;


    private List<Map<String,Object>> names;
    
   


这里我想忽略

firstNameFormatted

来自我的 json 响应,但我不确定如何使用 jackson 来处理列表内的字段?

【问题讨论】:

顺便说一句,该字段位于对象内部,而不是列表。 但是,一般情况下,你不能使用Map&lt;String,Object&gt;,你需要一个带有@JsonIgnore注解的对象和字段 对不起,当你说对象和字段注释时我不明白?在这种情况下,您指的是地图吗? 我的意思是创建一个类来代替映射,您可以序列化一个将忽略某些String firstNameFormatted 字段的对象 好的理解 【参考方案1】:

杰克逊对此有一个解决方案。只需使用@JsonIgnore 您可以在下面的示例中看到它

@JsonIgnore
public String getPassword() 
    return password;

现在密码信息不会被序列化为 JSON。

你也可以试试@JsonIgnoreProperties

【讨论】:

以上是关于如何忽略 JSON 响应中列表中的特定字段的主要内容,如果未能解决你的问题,请参考以下文章

如何使 Python 中的 json.dumps 忽略不可序列化的字段

go json 转换忽略字段控制字段可有可无

如何忽略 ExtJS 数据模型中的空字段?

如何在全球范围内忽略具有恢复响应的 Null 字段?

git 忽略特定类型的所有文件,特定子文件夹中的文件除外

npm install:有没有办法忽略 package.json 中的特定依赖项