背景
目前鉴于前后端分离开发的流行,现在需要对后端接口返回json数据格式,做统一规范处理
特性要求
要求后端接口统一返回以下格式
{
"code": "SUC0000",
"message": "成功",
"timestamp": 1669374903292,
"data": null
}
code | 接口响应状态码 |
---|---|
message | 接口返回信息 |
code | 接口响应状态码 |
timestamp | 时间戳 |
data | 数据 |
总体设计实现
利用spring-web带有的控制器增强,@ControllerAdvice,统一包装controller接口的返回值
- 针对接口成功响应: @ControllerAdvice
- 针对接口异常响应: @ControllerAdvice + @ExceptionHandler
具体实现样例链接:统一接口包装返回实现
@ControllerAdvice
public class ResponseControllerAdviceImpl implements ResponseBodyAdvice<Object> {
private ObjectMapper objectMapper = new ObjectMapper();
@Override