1、类定义
前后端交互的时候,后端返回的结果如果不统一规范,会给前端造成很大的麻烦,因此需要在通用工具类中定义一个返回结果类,代码如下:
/**
* 统一整个项目中Ajax请求返回的结果(未来也可以用于分布式架构各个模块间调用时返回统一类型)
* @author alageek
* @param <T>
*/
public class ResultEntity<T> {
public static final String SUCCESS = "SUCCESS";
public static final String FAILED = "FAILED";
/**
* 用来封装当前请求处理的结果是成功还是失败
*/
private String result;
/**
* 请求处理失败时返回的错误消息
*/
private String message;
/**
* 要返回的数据
*/
private T data;
public static <E> ResultEntity<E> successWithoutData(){
return new ResultEntity<>(SUCCESS, null, null);
}
public static <E> ResultEntity<E> successWithData(E data){
return new ResultEntity<>(SUCCESS, null, data);
}
public static <E> ResultEntity<E> failed(String msg){
return new ResultEntity<>(FAILED, msg, null);
}
//无参构造,有参构造,getter,setter代码省略不写,需补上
}
返回结果类中主要定义了三个静态方法,请求成功返回数据的,请求成功不返回数据的,请求失败带失败信息的。使用的时候将需要返回的信息通过这三个静态方法封装进ResultEntity。