美文网首页
Java 响应信息主体

Java 响应信息主体

作者: 做你后盾_c0d5 | 来源:发表于2022-06-13 08:50 被阅读0次
    /**
     * 响应信息主体
     *
     * @author JIANG
     */
    @Data
    @NoArgsConstructor
    @ApiModel("请求响应对象")
    public class R<T> implements Serializable {
        private static final long serialVersionUID = 1L;
    
        /**
         * 成功
         */
        public static final int SUCCESS = 200;
    
        /**
         * 失败
         */
        public static final int FAIL = 500;
    
        @ApiModelProperty("消息状态码")
        private int code;
    
        @ApiModelProperty("消息内容")
        private String msg;
    
        @ApiModelProperty("数据对象")
        private T data;
    
        public static <T> R<T> ok() {
            return restResult(null, SUCCESS, "操作成功");
        }
    
        public static <T> R<T> ok(T data) {
            return restResult(data, SUCCESS, "操作成功");
        }
    
        public static <T> R<T> ok(String msg) {
            return restResult(null, SUCCESS, msg);
        }
    
        public static <T> R<T> ok(String msg, T data) {
            return restResult(data, SUCCESS, msg);
        }
    
        public static <T> R<T> fail() {
            return restResult(null, FAIL, "操作失败");
        }
    
        public static <T> R<T> fail(String msg) {
            return restResult(null, FAIL, msg);
        }
    
        public static <T> R<T> fail(T data) {
            return restResult(data, FAIL, "操作失败");
        }
    
        public static <T> R<T> fail(String msg, T data) {
            return restResult(data, FAIL, msg);
        }
    
        public static <T> R<T> fail(int code, String msg) {
            return restResult(null, code, msg);
        }
    
        private static <T> R<T> restResult(T data, int code, String msg) {
            R<T> r = new R<>();
            r.setCode(code);
            r.setData(data);
            r.setMsg(msg);
            return r;
        }
    
    

    相关文章

      网友评论

          本文标题:Java 响应信息主体

          本文链接:https://www.haomeiwen.com/subject/twxomrtx.html