SpringBoot结果集包装类

1、前言

在SpringBoot项目中、看了一部分代码、发现一般的接口以JSON形式返回最佳、接口规范遵照RESTFUL风格来写、返回的结果集呢、借助包装类来包装、这样有利于前后端的交互、写出来的代码得到了规范。

2、两个包装类

1、CodeMsg

这个类主要是返回对应的状态码和信息的

package com.imooc.miaosha.result;

public class CodeMsg {
	
	private int code;
	private String msg;
	
	//通用的错误码

	//有参、无参构造
	
	// get set 方法
	
	// toString方法
}

2、Result

这个类是结果集映射类、主要是对返回的结果进行包装、将上面的code码和msg同时用泛型结果类包裹起来、有利于后续的JSON化以及使用。

public class Result<T> {
	
	private int code;
	private String msg;
	private T data;
	
	// 成功时候的调用
	public static  <T> Result<T> success(T data){
		return new Result<T>(data);
	}
	
	// 失败时候的调用
	public static  <T> Result<T> error(CodeMsg codeMsg){
		return new Result<T>(codeMsg);
	}
	
	private Result(T data) {
		this.data = data;
	}
	
	private Result(int code, String msg) {
		this.code = code;
		this.msg = msg;
	}
	
	private Result(CodeMsg codeMsg) {
		if(codeMsg != null) {
			this.code = codeMsg.getCode();
			this.msg = codeMsg.getMsg();
		}
	}
	
	// get 和  set 方法
}

3、总结

借助包装类、很好的对代码进行规范、以及对于接口返回的数据得到了一定的格式、无规矩不成方圆、有了格式、自己看、别人看都能看懂、减少沟通成本、提升了的代码的效率。useful coding

上一篇:GoF23种设计模式


下一篇:easyui日期到月份