SpringBoot 统一返回值与全局异常处理——项目标配
📅 2026/7/10 2:04:28
👁️ 阅读次数
📝 编程学习
企业级项目中,统一返回值格式和全局异常处理是必须的标配。否则前端要处理十几种不同的返回格式,维护成本极高。
一、统一返回值
@Data@Accessors(chain=true)publicclassResultVO<T>{privateintcode;privateStringmessage;privateTdata;privatelongtimestamp;publicResultVO(){this.timestamp=System.currentTimeMillis();}publicstatic<T>ResultVO<T>success(Tdata){returnnewResultVO<T>().setCode(200).setMessage("操作成功").setData(data);}publicstatic<T>ResultVO<T>error(intcode,Stringmessage){returnnewResultVO<T>().setCode(code).setMessage(message);}}二、全局异常处理
@RestControllerAdvicepublicclassGlobalExceptionHandler{@ExceptionHandler(BusinessException.class)publicResultVO<?>handleBusiness(BusinessExceptione){returnResultVO.error(e.getCode(),e.getMessage());}@ExceptionHandler(MethodArgumentNotValidException.class)publicResultVO<?>handleValidation(MethodArgumentNotValidExceptione){Stringmsg=e.getBindingResult().getFieldErrors().stream().map(FieldError::getDefaultMessage).collect(Collectors.joining("; "));returnResultVO.error(400,msg);}@ExceptionHandler(Exception.class)publicResultVO<?>handleOther(Exceptione){returnResultVO.error(500,"服务器繁忙");}}💡 觉得有用的话,点赞 + 关注【张老师技术栈】吧!
编程学习
技术分享
实战经验