Spring Boot 2.x(六):优雅的统一返回值

 

为什么要统一返回值

在我们做后端应用的时候,前后端分离的情况下,我们经常会定义一个数据格式,通常会包含codemessagedata这三个必不可少的信息来方便我们的交流,下面我们直接来看代码

ReturnVO

package indi.viyoung.viboot.util;  import java.util.Properties;  /**  * 统一定义返回类  *  * @author yangwei  * @since 2018/12/20  */ public class ReturnVO {      private static final Properties properties = ReadPropertiesUtil.getProperties(System.getProperty("user.dir") + "/viboot-common/src/main/resources/response.properties");      /**      * 返回代码      */     private String code;      /**      * 返回信息      */     private String message;      /**      * 返回数据      */     private Object data;       public Object getData() {         return data;     }      public void setData(Object data) {         this.data = data;     }      public String getMessage() {         return message;     }      public void setMessage(String message) {         this.message = message;     }      public String getCode() {         return code;     }      public void setCode(String code) {         this.code = code;     }      /**      * 默认构造,返回操作正确的返回代码和信息      */     public ReturnVO() {         this.setCode(properties.getProperty(ReturnCode.SUCCESS.val()));         this.setMessage(properties.getProperty(ReturnCode.SUCCESS.msg()));     }      /**      * 构造一个返回特定代码的ReturnVO对象      * @param code      */     public ReturnVO(ReturnCode code) {         this.setCode(properties.getProperty(code.val()));         this.setMessage(properties.getProperty(code.msg()));     }      /**      * 默认值返回,默认返回正确的code和message      * @param data      */     public ReturnVO(Object data) {         this.setCode(properties.getProperty(ReturnCode.SUCCESS.val()));         this.setMessage(properties.getProperty(ReturnCode.SUCCESS.msg()));         this.setData(data);     }      /**      * 构造返回代码,以及自定义的错误信息      * @param code      * @param message      */     public ReturnVO(ReturnCode code, String message) {         this.setCode(properties.getProperty(code.val()));         this.setMessage(message);     }      /**      * 构造自定义的code,message,以及data      * @param code      * @param message      * @param data      */     public ReturnVO(ReturnCode code, String message, Object data) {         this.setCode(code.val());         this.setMessage(message);         this.setData(data);     }      @Override     public String toString() {         return "ReturnVO{" +                 "code='" + code + '\'' +                 ", message='" + message + '\'' +                 ", data=" + data +                 '}';    
                    
50000+
5万行代码练就真实本领
17年
创办于2008年老牌培训机构
1000+
合作企业
98%
就业率

联系我们

电话咨询

0532-85025005

扫码添加微信