zoukankan      html  css  js  c++  java
  • Java项目返回数据封装 + swagger2

    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);
    }

  • 相关阅读:
    SharePoint 2013 图文开发系列之自定义字段
    SharePoint 2013 图文开发系列之Visual Studio 创建母版页
    SharePoint 2013 图文开发系列之代码定义列表
    SharePoint 2013 图文开发系列之计时器任务
    SharePoint 2013 图文开发系列之应用程序页
    SharePoint 2013 图文开发系列之事件接收器
    SharePoint 2013 图文开发系列之可视化WebPart
    SharePoint 2013 图文开发系列之WebPart
    SharePoint 2013 对二进制大型对象(BLOB)进行爬网
    SharePoint 2013 状态机工作流之日常报销示例
  • 原文地址:https://www.cnblogs.com/zhulei2/p/13910974.html
Copyright © 2011-2022 走看看