ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

02 统一结果封装

2020-08-13 11:31:16  阅读:182  来源: 互联网

标签:02 code 封装 String Result return data public 统一


统一结果封装

这里我们用到了一个Result的类,这个用于我们的异步统一返回的结果封装。一般来说,结果里面有几个要素必要的

  • 是否成功,可用code表示(如0表示成功,-1表示异常)
  • 结果消息
  • 结果数据

所以可得到封装如下:

  • com.gychen.common.lang.Result
  • (在这里@Data注解不能生成set和get方法,原因是IDEA里没有下载Lombok插件,去setting->Plugins里搜索install->restart IDEA)
@Data
public class Result implements Serializable {
    private String code;   // 返回0是正常,非0是异常
    private String msg;
    private Object data;
    public static Result succ(Object data) {
        Result m = new Result();
        m.setCode("0");
        m.setData(data);
        m.setMsg("操作成功");
        return m;
    }
    public static Result succ(String mess, Object data) {
        Result m = new Result();
        m.setCode("0");
        m.setData(data);
        m.setMsg(mess);
        return m;
    }
    public static Result succ(String code, String msg, Object data) {
        Result m = new Result();
        m.setCode(code);
        m.setMsg(msg);
        m.setData(data);
        return m;
    }
    public static Result fail(String mess) {
        Result m = new Result();
        m.setCode("-1");
        m.setData(null);
        m.setMsg(mess);
        return m;
    }
    public static Result fail(String mess, Object data) {
        Result m = new Result();
        m.setCode("-1");
        m.setData(data);
        m.setMsg(mess);
        return m;
    }
    public static Result fail(String code, String msg, Object data) {
        Result m = new Result();
        m.setCode(code);
        m.setMsg(msg);
        m.setData(data);
        return m;
    }
}

测试封装

  • 在UserController里写测试

    @RestController
    @RequestMapping("/user")
    public class UserController {
        @Autowired
        UserService userService;
        @GetMapping("/index")
        public Result index(){
            User user = userService.getById(1L);
            return Result.succ("index返回成功",user);
        }
    }
    
    
  • 然后run一下

  • 这里可以用一个Json的插件浏览网页的json数据,插件地址。

标签:02,code,封装,String,Result,return,data,public,统一
来源: https://www.cnblogs.com/nuister/p/13495356.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有