Java API接口统一格式返回结果类

本文介绍了如何在Java后端开发中定义统一的API返回格式,包括基本的状态码、消息和数据字段,并通过创建枚举来管理状态码。接着,使用拦截器简化代码,自动封装返回结果。此外,还提到了如何通过自定义注解@ResponseResult来避免不需要封装的方法。
摘要由CSDN通过智能技术生成

废话不多说,直接正文。

首先,我们需要定义规则(返回的格式)。如http的返回状态码 404,500,200等。我们都知道404是找不到资源,200是正常的。由此可以知道,每一个状态码都有一个对应的说明。当请求是正常的,我们还需要有存储返回值的地方。

所以返回的格式如下:状态码(code),状态码说明(msg),相应数据(data),这个是比较基础的返回格式。

/**
 * 返回体
 * @author
 *
 */
public class Result implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	//状态码
	private Integer code;
    
	//响应消息
	private String msg;
	
	//响应数据
	private Object data;

	public Integer getCode() {
		return code;
	}

	public void setCode(Integer code) {
		this.code = code;
	}

	public String getMsg() {
		return msg;
	}

	public void setMsg(String msg) {
		this.msg = msg;
	}

	public Object getData() {
		return data;
	}

	public void setData(Object data) {
		this.data = data;
	}
	
	public Result(ResultCode resultCode,Object data) {
		 this.code=resultCode.getCode();
		 this.msg=resultCode.getMsg();
		 this.data=data;
	}
	public Result(Integer code,String msg,Object data) {
		 this.code=code;
		 this.msg=msg;
		 this.data=data;
	}
	
}

当然也有更复杂的。如下格式:包含分页信息、token身份、模糊查询等。(这个的实现和上面的格式没有什么区别。就是需要建立的实体类要多一些。)

{
    "message": {
        "header": {
            "auth": {
                "callerid": "1552267897663",
                "license": "9425846d54cf4ff0b7d81dd6b922fa75",
                "token": "095A1DA8106527EE81350845611AEEB3",
                "ipaddr": "",
                "macaddr": ""
            },
            "servicecode": {
                "systemcode": "",
                "busscode": "",
                "version": "1",
                "apiurl": ""
            },
            "respon": {
                "code": "1",
                "text": "Token验证正常",
                "detail": null
            }
        },
        "body": {
            "bussresponse": {
                "code": "0",
                "text": "系统异常:系统错误:传入查询编号不适配",
                "detail": "0038e266-5c10-49ef-a61
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值