1,封裝返回數據對象
package com.yw.common.util; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @Data @AllArgsConstructor @NoArgsConstructor public class Result<T> { @ApiModelProperty(value = "狀態碼") private Integer code; @ApiModelProperty(value = "響應信息") private String msg; @ApiModelProperty(value = "數據") private T data; }
這里要使用泛型,不能用Object,否則swagger2配置ui界面無法解讀data中的數據
2,ResultUtil.java
package com.yw.common.util; /** * @Author zl * @Description * @Date 2020/11/1 19:55 */ public class ResultUtil { protected enum ResultEnum { SUCCESS(20000, "success"), FAIL(50000, "fail"),; ; private Integer code; private String msg; ResultEnum(Integer code, String msg) { this.code = code; this.msg = msg; } public Integer getCode() { return code; } public String getMsg() { return msg; } } /**成功且帶數據**/ public static <T> Result<T> success(T object){ Result<T> result = new Result<T>(); result.setCode(ResultEnum.SUCCESS.getCode()); result.setMsg(ResultEnum.SUCCESS.getMsg()); result.setData(object); return result; } /**成功但不帶數據**/ public static <T>Result<T> success(){ return success(null); } /**失敗**/ public static <T> Result<T> fail(Integer code, String msg){ Result<T> result = new Result<T>(); result.setCode(code); result.setMsg(msg); return result; } /**失敗**/ public static <T> Result<T> fail(){ Result<T> result = new Result<T>(); result.setCode(ResultEnum.SUCCESS.getCode()); result.setMsg(ResultEnum.SUCCESS.getMsg()); return result; } }
3,待返回的封裝對象
package com.yw.model.resp.equipment; import io.swagger.annotations.ApiModelProperty; import lombok.Data; /** * @Author zl * @Description * @Data 2020/10/30 14:48 */ @Data public class ComplexityResp { @ApiModelProperty(value = "體系復雜度") private double clusterCoefficient; @ApiModelProperty(value = "網絡密度") private double networkDensity; @ApiModelProperty(value = "平均距離") private double averageDistance; @ApiModelProperty(value = "體系復雜度") private double complexityInfluenceDegree; }
4,controller方法 和 swagger2界面
@ApiOperation("返回體系復雜度特性影響度數值") @PostMapping("/complexityInfluenceDegree") public Result<ComplexityResp> complexityInfluenceDegree(@ApiParam("體系復雜度請求數據")@RequestBody(required = false)ComplexityReq complexityData) { return equipmentService.complexityInfluenceDegree(complexityData); }