JavaLib | result 模块

字数 169阅读 130

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

推荐阅读更多精彩内容