我正在使用swagger-codgen为我的spring Boot 应用程序生成java模型类,并将它们序列化为json。默认情况下,这些模型都将包含空值的可选属性。
我想为spring配置swagger-codgen,以在所有类的顶部包含此注解:@JsonInclude(Include.NON_NULL)
,以便空值属性不包括在序列化的JSON中。
我如何才能做到这一点?是否有配置选项,或者我必须手动扩展spring codegen?
我正在使用swagger-codgen为我的spring Boot 应用程序生成java模型类,并将它们序列化为json。默认情况下,这些模型都将包含空值的可选属性。
我想为spring配置swagger-codgen,以在所有类的顶部包含此注解:@JsonInclude(Include.NON_NULL)
,以便空值属性不包括在序列化的JSON中。
我如何才能做到这一点?是否有配置选项,或者我必须手动扩展spring codegen?
4条答案
按热度按时间u59ebvdq1#
您可以在
application.yaml
中进行配置:xj3cbfub2#
实现这一点的一种方法是通过添加注解来修改Java Spring的pojo template。此模板用于生成模型。
pbpqsu0x3#
如果您没有application.yaml或application.properties,但有springxml配置,那么添加this也可以实现。
这不会将注解放在文件中,但具有相同的效果。
请注意,这应该添加到使用您生成的代码的应用程序中,而不一定是生成它的应用程序。
mzmfm0qo4#
选项
NotNullJacksonAnnotation
是在Swagger Codegen 2.4.15中引入的。您可以找到here的详细信息。请随意使用它来用@JsonInclude(Include.NON_NULL)
注解您的POJO。