下面是我的API,我有3个版本:
@ApiResponses({
@ApiResponse(code = 200, message = SuccessConstants.Message, response = GetInfoResponse.class)})
public ResponseEntity<GetInfoResponse> getInfo(@ApiParam(value = "InfoId", required = true)
{
}
class GetInfoResponse{
private A a;
@JsonInclude(Include.NON_NULL)
private B b;
@JsonInclude(Include.NON_NULL)
private C c;
}
对于v2 API,B对象为null,对于v3,C对象为null。 使用非null注释时,这些字段将不会在相应版本的响应JSON中显示。
但是这些字段显示在所有版本的Swagger响应模型中。 Swagger中有什么方法可以隐藏空字段吗?