接口返回消息封装类

package com.kd.modelapi.common;\r\n\r\nimport java.io.PrintWriter;\r\nimport java.io.StringWriter;\r\n\r\nimport com.kd.enu.ResultEnum;\r\n\r\n/**\r\n * 通用的对外返回结果字段\r\n */\r\npublic class ResponseVo {\r\n\r\n	private Integer status = ResultEnum.SUCCESS.getStatus(); // 返回状态 整型\r\n	private String result = ResultEnum.SUCCESS.getResult(); // 返回状态 字符串型\r\n															// 只有success,error\r\n	private String info; // 会信息,程序员自己抛出的异常信息\r\n	private Object data; // 返回数据 object\r\n	private Integer errorCode; // 错误码\r\n	private String stackInfo;// 异常信息\r\n\r\n	public ResponseVo() {\r\n	}\r\n\r\n	public ResponseVo(Integer status, String result, String info, Object data, Integer errorCode, String stackInfo) {\r\n		super();\r\n		this.status = status;\r\n		this.result = result;\r\n		this.info = info;\r\n		this.data = data;\r\n		this.errorCode = errorCode;\r\n		this.stackInfo = stackInfo;\r\n	}\r\n\r\n	public static ResponseVo success(){\r\n    	return new ResponseVo(ResultEnum.SUCCESS.getStatus(), ResultEnum.SUCCESS.getResult(), ResultEnum.SUCCESS.getInfo(),null, null, null);\r\n    }\r\n	\r\n	public static ResponseVo success(String info){\r\n    	return new ResponseVo(ResultEnum.SUCCESS.getStatus(), ResultEnum.SUCCESS.getResult(), info,null, null, null);\r\n    }\r\n	\r\n	public static ResponseVo success(String info,Object data){\r\n    	return new ResponseVo(ResultEnum.SUCCESS.getStatus(), ResultEnum.SUCCESS.getResult(), info,data, null, null);\r\n    }\r\n	\r\n	public static ResponseVo error(){\r\n    	return new ResponseVo(ResultEnum.ERROR.getStatus(), ResultEnum.ERROR.getResult(), ResultEnum.ERROR.getInfo(),null, null, null);\r\n    }\r\n	\r\n	public static ResponseVo error(String info){\r\n    	return new ResponseVo(ResultEnum.ERROR.getStatus(), ResultEnum.ERROR.getResult(), info,null, null, null);\r\n    }\r\n	\r\n	public static ResponseVo error(String info, String stackInfo){\r\n    	return new ResponseVo(ResultEnum.ERROR.getStatus(), ResultEnum.ERROR.getResult(), info,null,null, stackInfo);\r\n    }\r\n	\r\n	public static ResponseVo error(String info,Integer errorCode, String stackInfo){\r\n    	return new ResponseVo(ResultEnum.ERROR.getStatus(), ResultEnum.ERROR.getResult(), info,null, errorCode, stackInfo);\r\n    }\r\n	\r\n	public Object getData() {\r\n		return data;\r\n	}\r\n\r\n	public void setData(Object data) {\r\n		this.data = data;\r\n	}\r\n\r\n	public Integer getStatus() {\r\n		return status;\r\n	}\r\n\r\n	public void setStatus(Integer status) {\r\n		this.status = status;\r\n	}\r\n\r\n	// @MethodAnnotation(description = "success、error")\r\n	public String getResult() {\r\n		return result;\r\n	}\r\n\r\n	public void setResult(String result) {\r\n		this.result = result;\r\n	}\r\n\r\n	// @MethodAnnotation(description = "异常信息")\r\n	public String getInfo() {\r\n		return info;\r\n	}\r\n\r\n	public void setInfo(String info) {\r\n		this.info = info;\r\n	}\r\n\r\n	// @MethodAnnotation(description = "返回错误码")\r\n	public Integer getErrorCode() {\r\n		return errorCode;\r\n	}\r\n\r\n	public void setErrorCode(Integer errorCode) {\r\n		this.errorCode = errorCode;\r\n	}\r\n\r\n	public void setInfoStatus(String info, Integer state) {\r\n		this.info = info;\r\n		this.status = state;\r\n		if(ResultEnum.SUCCESS.getStatus().equals(state)){\r\n			this.result = "success";\r\n		}else{\r\n			this.result = "error";\r\n		}\r\n	}\r\n\r\n	public void setInfoStatus(Exception ex) {\r\n		StringWriter sw = new StringWriter();\r\n		PrintWriter pw = new PrintWriter(sw);\r\n		ex.printStackTrace(pw);\r\n		this.info = sw.toString();\r\n		this.status = ResultEnum.ERROR.getStatus();\r\n		this.result = "error";\r\n	}\r\n\r\n	public ResponseVo setInfoStatus(String info, Integer errorCode, Integer status) {\r\n		this.errorCode = errorCode;\r\n		setInfoStatus(info, status);\r\n		return this;\r\n	}\r\n\r\n	public String getStackInfo() {\r\n		return stackInfo;\r\n	}\r\n\r\n	public void setStackInfo(String stackInfo) {\r\n		this.stackInfo = stackInfo;\r\n	}\r\n\r\n	@Override\r\n	public String toString() {\r\n		StringBuilder builder = new StringBuilder();\r\n		builder.append("ResponseVo [status=");\r\n		builder.append(status);\r\n		builder.append(", result=");\r\n		builder.append(result);\r\n		builder.append(", info=");\r\n		builder.append(info);\r\n		builder.append(", data=");\r\n		builder.append(data);\r\n		builder.append(", errorCode=");\r\n		builder.append(errorCode);\r\n		builder.append(", stackInfo=");\r\n		builder.append(stackInfo);\r\n		builder.append("]");\r\n		return builder.toString();\r\n	}\r\n}


返回码枚举

package com.kd.enu;\r\n\r\n/**\r\n * \r\n* <p>Title: ResultEnum</p>  \r\n\r\n* <p>Description:返回结果码枚举 </p>  \r\n\r\n* @author mengjinyuan  \r\n\r\n* @date 2019年3月14日\r\n */\r\npublic enum ResultEnum {\r\n	\r\n	SUCCESS(0,"成功","success"),\r\n	ERROR(-1,"错误","error"),\r\n	VERIFY_ERROR(3,"错误","error"),\r\n	CUSTOMER_ALEADAY(3,"错误","error");\r\n	\r\n	private Integer status;\r\n	private String info;\r\n	private String result;\r\n	ResultEnum(Integer status,String info,String result){\r\n		this.status=status;\r\n		this.info=info;\r\n		this.result=result;\r\n	}\r\n	public Integer getStatus() {\r\n		return status;\r\n	}\r\n\r\n	public void setStatus(Integer status) {\r\n		this.status = status;\r\n	}\r\n\r\n	public String getInfo() {\r\n		return info;\r\n	}\r\n\r\n	public void setInfo(String info) {\r\n		this.info = info;\r\n	}\r\n\r\n	public String getResult() {\r\n		return result;\r\n	}\r\n\r\n	public void setResult(String result) {\r\n		this.result = result;\r\n	}\r\n}

个人感觉这样设置比较的规范

本文标题:《接口返回消息封装类》作者:mengjinyuan
原文链接:http://blog.cxnxs.cn/?id=95
特别注明外均为原创,转载请注明。

分享到微信

扫描二维码

可在微信查看或分享至朋友圈。

相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。