【Spring Boot】统一数据返回
在Spring Boot中,为了实现统一的数据返回,通常会创建一个数据返回的封装类。以下是一个简单的示例:
import java.io.Serializable;
public class ResponseResult<T> implements Serializable {
private static final long serialVersionUID = 1L;
private int code;
private String message;
private T data;
public ResponseResult(int code, String message, T data) {
this.code = code;
this.message = message;
this.data = data;
}
// 成功响应的构造器
public static <T> ResponseResult<T> success(T data) {
return new ResponseResult<>(200, "Success", data);
}
// 失败响应的构造器
public static <T> ResponseResult<T> error(int code, String message) {
return new ResponseResult<>(code, message, null);
}
// 省略getter和setter方法...
}
使用该封装类的示例:
@RestController
@RequestMapping("/api")
public class MyController {
@GetMapping("/someData")
public ResponseResult<MyData> getSomeData() {
MyData data = ...; // 获取数据的逻辑
return ResponseResult.success(data);
}
@PostMapping("/submitData")
public ResponseResult<?> submitData(@RequestBody MyData data) {
boolean result = ...; // 提交数据的逻辑
return result ? ResponseResult.success(null) : ResponseResult.error(400, "Failed to submit data");
}
}
在这个示例中,ResponseResult
封装类用于表示所有API响应。它具有一个通用类型参数T
用于表示数据部分的类型。success
方法用于生成代表成功的ResponseResult
实例,而error
方法用于生成代表错误的实例。在Controller中,每个请求方法都返回ResponseResult
的一个实例,这样客户端将始终以相同的格式接收数据。
评论已关闭