spring swagger2 返回类型为 泛型 时的描述

原因:

       公司规范规定 返回值仅传输当前页面需要的,不允许传输不需要的属性(例:用户对象一共20个字段,用户详情接口仅需6个)

 

先贴结果

 

 

再贴代码 

公共返回对象

@ApiModel(value="ReQueryResult对象",description="公共返回对象ReQueryResult")
@JsonInclude(JsonInclude.Include.NON_NULL)
@Data
public class ReQueryResult<T> {
    /**
     * 登录结果码,000表示成功,非000表示失败
     */
    @ApiModelProperty(value = "返回码")
    private String resultCode;
    /**
     * 登录结果码描述信息
     */
    @ApiModelProperty(value = "描述")
    private String resultDesc;
    //业务数据
    @ApiModelProperty(value = "数据")
    private Object data;

    @ApiModelProperty(value = "对象")
    private T resultObj;

    @ApiModelProperty(value = "总页数")
    private Integer recordsTotal;
//    @ApiModelProperty(value = "")
//    private Integer recordsFiltered;

    @ApiModelProperty(value = "是否需要更新")
    private Integer isUpdateToken;

    private String token;


    public void success(String msg){
        resultCode = TYPE_ZERO_ZERO_STR;
        resultDesc = msg;
    }

    public void error(String msg){
        resultCode = TYPE_ONE_HUNDRED_STR;
        resultDesc=msg;
    }

    public void loginError(String msg){
        resultCode = TYPE_ONE_HUNDRED_TWO_STR;
        resultDesc=msg;
    }

    //结果码
    public static final String TYPE_ZERO_ZERO_STR="000"; //成功
    public static final String TYPE_ONE_HUNDRED_STR="100"; // 失败
    public static final String TYPE_ONE_HUNDRED_ONE_STR="101";//
    public static final String TYPE_ONE_HUNDRED_TWO_STR="102";//登录失败
    public static final String TYPE_ONE_HUNDRED_THREE_STR="103";//未注册
    public static final String TYPE_ONE_HUNDRED_FOUR_STR="104";//验证码登录 未注册
    public static final String TYPE_ONE_HUNDRED_FIVE_STR="105";//是否确认发布项目
    public static final String TYPE_ONE_HUNDRED_SIX_STR="106";//未设置支付密码
    public static final String TYPE_ONE_HUNDRED_SEVEN_STR="107";//ios登录失败

}

其中  关键代码  @JsonInclude(JsonInclude.Include.NON_NULL) 

                          ReQueryResult<T>               private T resultObj;

 

controller层

@CoerceLoginAop
@ApiOperation(value = "获取会员信息")
@RequestMapping(value = "", method = RequestMethod.GET)
    public ReQueryResult<OrderInfo> getInformation(HttpServletRequest request,@ApiIgnore()MemberInfo memberInfo){
        result=new ReQueryResult();
    MemberInfo info = mis.getById(memberInfo.getId());
    info.setPassword("");
    result.setData(info);
    result.success(SUCCESS_DESC);
    return  result;
}

其中  关键代码 public  ReQueryResult<OrderInfo> 

 

 

jackson处理返回的序列化 参考: https://blog.csdn.net/qq_22771739/article/details/89949137

 swagger2 参考 :java 泛型

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值