如何忽略 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<String,Object>
,你需要一个带有@JsonIgnore
注解的对象和字段
对不起,当你说对象和字段注释时我不明白?在这种情况下,您指的是地图吗?
我的意思是创建一个类来代替映射,您可以序列化一个将忽略某些String firstNameFormatted
字段的对象
好的理解
【参考方案1】:
杰克逊对此有一个解决方案。只需使用@JsonIgnore
您可以在下面的示例中看到它
@JsonIgnore
public String getPassword()
return password;
现在密码信息不会被序列化为 JSON。
你也可以试试@JsonIgnoreProperties
【讨论】:
以上是关于如何忽略 JSON 响应中列表中的特定字段的主要内容,如果未能解决你的问题,请参考以下文章