我正在使用 swagger-ui 和 lombok 开发 spring-boot 应用程序。目前我正在尝试从请求正文中隐藏嵌套对象,但它仍然显示在 swagger-ui 页面上的示例 json 中。
我的类(class)带有注释(简化为仅相关内容):
@Data
@ApiModel(description = "Character model")
public class Character {
@ApiModelProperty(readOnly = true)
private Long id;
@ApiModelProperty(readOnly = true)
private SearchAnnouncement searchAnnouncement;
}
注意:@Data 是 Lombok 注释,它生成 getter、setter 和其他一些东西当我访问 swagger 页面上的示例模型时,“id”字段正确隐藏在示例 json 中,并在响应模型中可见。
但是“searchAnnouncement”并未隐藏在示例 json 中。
我试过:
但在所有情况下,示例 json 看起来都像这样(隐藏了 id,而 searchAnnouncement 可见):
{
"searchAnnouncement": {
"id": 0,
},
}
简而言之,我的问题是:是否可以隐藏示例 json 嵌套对象?
编辑:
忘了提及我目前在我的依赖项中有 2.9.2 版的 swagger2 和 swagger-ui,但我从 2.8.0 升级希望隐藏这个嵌套对象
最佳答案
我遇到了同样的问题,我通过设置 jsonIgnore
修复了它在我的二传手上。我正在使用依赖版本 2.9.2。
关于java - Swagger-ui 不会从示例正文中隐藏只读嵌套对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53454357/