继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

JavaLib | result 模块

冯文议
关注TA
已关注
手记 82
粉丝 1.4万
获赞 707
result是什么?

result 是帮助 后端 API 开发者将接口返回统一化。

样式

返回是 json 字符串,以下样式均已被格式化。

成功且有数据

{
    "code":0,
    "msg":"Success",
    "data":"DATA"
}

成功无数据

{
    "code":0,
    "msg":"Success"
}

错误

{
    "code":500,
    "msg":"(Error)程序出错"
}
ReturnCode

你需要些这样一个枚举类,并完善你的返回码。下面是样例:

/**
  * 返回码枚举类 (样例)
  * @author Wenyi Feng
  */
public enum ReturnCode implements IReturnCode {

    // 500
    ERROR_500(500, "(Error)程序出错"),

    SUCCESS(0, "Success")
    ;

    private Integer code;
    private String msg;

    ReturnCode(Integer code, String msg) {
        this.code = code;
        this.msg = msg;
    }

    @Override
    public Integer getCode() {
        return code;
    }

    @Override
    public String getMsg() {
        return msg;
    }
}
使用

这里有两点要说明:

1、虽然Sping支持直接返回实体(对象),他会帮我们转成json格式,但是他不能很好的处理 null
2、JavaLib 已经依赖了 Gson 库,所以你可以直接使用。

测试代码:

/**
  * 返回码测试
  */
@Test
public void test() {
    Result result = new Result();
    // result.setResult(ReturnCode.SUCCESS);
    // result.setResult(ReturnCode.SUCCESS, "DATA");
    result.setResult(ReturnCode.ERROR_500);
    System.out.print(new Gson().toJson(result));
}
JavaLib

https://github.com/fengwenyi/JavaLib

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP