统一API返回json工具类package com.zhihu.portal.common;import java.io.Serializable;/** * 统一API返回json工具类 /public class Result implements Serializable { private Integer code; private String message; private Object data; public Result() { } public Result(Integer code, String message) { this.code = code; this.message = message; } public static Result success(){ Result res = new Result(); res.setResultCode(ResultCode.SUCCESS); return res; } public static Result success(Object data) { Result result = new Result(); result.setResultCode(ResultCode.SUCCESS); result.setData(data); return result; } public static Result failure(ResultCode resultCode) { Result result = new Result(); result.setResultCode(resultCode); result.setMessage(resultCode.message()); return result; } public static Result failure(ResultCode resultCode, Object data) { Result result = new Result(); result.setResultCode(resultCode); result.setData(data); return result; } public void setResultCode(ResultCode code) { this.code = code.code(); this.message = code.message(); } public Integer getCode() { return code; } public void setCode(Integer code) { this.code = code; } public String getMessage() { return message; } public void setMessage(String message) { this.message = message; } public Object getData() { return data; } public void setData(Object data) { this.data = data; }}API 统一返回状态码package com.zhihu.portal.common;/* * API 统一返回状态码 /public enum ResultCode { / 成功状态码 / SUCCESS(0, “成功”), / 令牌失效 / TOKEN_INVALID(401,“令牌失效”), SERVER_ERROR(400, “服务器错误”), /参数错误 10001-19999 / PARAM_IS_INVALID(10001, “参数无效”), PARAM_IS_BLANK(10002, “参数为空”), PARAM_TYPE_BIND_ERROR(10003, “参数类型错误”), PARAM_NOT_COMPLETE(10004, “参数缺失”), / 用户错误:20001-29999/ USER_NOT_LOGGED_IN(20001, “用户未登录”), USER_LOGIN_ERROR(20002, “账号不存在或密码错误”), USER_ACCOUNT_FORBIDDEN(20003, “账号已被禁用”), USER_NOT_EXIST(20004, “用户不存在”), USER_HAS_EXISTED(20005, “用户已存在”), Cert_HAS_EXISTED(20006, “认证已存在”), / 业务错误:30001-39999 / CREATE_FAIL(30001, “创建失败”), / 系统错误:40001-49999 / SYSTEM_INNER_ERROR(40001, “系统繁忙,请稍后重试”), / 数据错误:50001-599999 / RESULE_DATA_NONE(50001, “数据未找到”), DATA_IS_WRONG(50002, “数据有误”), DATA_ALREADY_EXISTED(50003, “数据已存在”), / 接口错误:60001-69999 / INTERFACE_INNER_INVOKE_ERROR(60001, “内部系统接口调用异常”), INTERFACE_OUTTER_INVOKE_ERROR(60002, “外部系统接口调用异常”), INTERFACE_FORBID_VISIT(60003, “该接口禁止访问”), INTERFACE_ADDRESS_INVALID(60004, “接口地址无效”), INTERFACE_REQUEST_TIMEOUT(60005, “接口请求超时”), INTERFACE_EXCEED_LOAD(60006, “接口负载过高”), / 权限错误:70001-79999 */ PERMISSION_NO_ACCESS(70001, “只有标签 Owner ,才具备删除权限”), PERMISSION_NO_PHONE_ACCESS(70002,“此认证标签已有员工认证,不可以进行删除”); private Integer code; private String message; ResultCode(Integer code, String message) { this.code = code; this.message = message; } public Integer code() { return this.code; } public String message() { return this.message; } public static String getMessage(String name) { for (ResultCode item : ResultCode.values()) { if (item.name().equals(name)) { return item.message; } } return name; } public static Integer getCode(String name) { for (ResultCode item : ResultCode.values()) { if (item.name().equals(name)) { return item.code; } } return null; } @Override public String toString() { return this.name(); } /public static void main(String[] args) { ResultCode[] ApiResultCodes = ResultCode.values(); List<Integer> codeList = new ArrayList<>(); for (ResultCode ApiResultCode : ApiResultCodes) { if (codeList.contains(ApiResultCode.code)) { System.out.println(ApiResultCode.code); } else { codeList.add(ApiResultCode.code()); } System.out.println(ApiResultCode.code); } }/}