gpt4 book ai didi

java - 带有 Jackson 的自定义 JSON 字段作为响应

转载 作者:行者123 更新时间:2023-11-29 08:26:52 24 4
gpt4 key购买 nike

我有一些使用 Spring Boot 创建的 RESTful WS,并且一些端点的方法之一返回某个类的实例,然后使用嵌入式 Jackson 库将其转换为 JSON。 Jackson 将每个字段转换为 JSON,即使某些字段为空。所以在输出中它看起来像:

{
"field1": "res1",
"field2": "res2",
"field3": null
}

我想在特定情况下忽略输出的某些字段。不是每次,在某些情况下。怎么做?

最佳答案

要使用 Jackson >2.0 抑制序列化具有空值的属性,您可以直接配置 ObjectMapper,或使用 @JsonInclude 注释:

mapper.setSerializationInclusion(Include.NON_NULL);

或:

@JsonInclude(Include.NON_NULL)
class Foo
{
String field1;
String field2;
String field3;
}

或者,您可以在 getter 中使用 @JsonInclude,以便在值不为 null 时显示该属性。

完整示例可在 How to prevent null values inside a Map and null fields inside a bean from getting serialized through Jackson 获得

关于java - 带有 Jackson 的自定义 JSON 字段作为响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52038947/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com