关于#java#的问题:我有两个接口出参共用了一个 VO,我能不能通过配置 Swagger 使在线的接口文档出参只显示接口需要的字段呢

Swagger 在线文档配置问题

我有两个接口出参共用了一个 VO,我能不能通过配置 Swagger 使在线的接口文档出参只显示接口需要的字段呢。

  • 下面是个大致的例子,hidden 属性设置了好像对所有的接口都屏蔽了。
    // 接口
    @ApiOperation(value = "接口1", notes = "接口1")
    @GetMapping(value = "/getThis1")
    public Result<List<IdNameTransVo>> getThis(@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
                                                @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) {
        List<IdNameTransBo> list = new ArrayList<>();
        return Result.OK(list);
    }

    @ApiOperation(value = "接口2", notes = "接口1")
    @GetMapping(value = "/getThis2")
    public Result<List<IdNameTransVo>> getThis(@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
                                                @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) {
        List<IdNameTransBo> list = new ArrayList<>();
        return Result.OK(list);
    }
    // vo
  @Data
  @ApiModel(value ="IdNameTransVo")
  public class IdNameTransVo {
    /**
     * NAME
     */
    @ApiModelProperty(value = "name")
    private String name;
    /**
     * ID
     */
    @ApiModelProperty(value ="id")
    private String id;
    /**
     * field1 仅接口 1 使用
     */
    @ApiModelProperty(value ="field1")
    private int field1;
    /**
     * field2 仅接口 2 使用
     */
    @ApiModelProperty(value ="field1")
    private int field2;
}

不可以