1. springboot版本升级3.x

2. mybatis plus版本升级3.x
3. dynamic mybatis plus版本升级3.x
4. redis版本升级3.x
5. reids实现配置优化
6. 替换swagger依赖(支持3.x)
7. 新增请求头工具类
8. 参数校验异常捕获优化
9. 拦截器注册为spring容器管理
10. 新增本地日志配置文件
This commit is contained in:
xiongf
2024-10-12 17:32:56 +08:00
parent cf4c78766b
commit 247e6f456a
16 changed files with 361 additions and 174 deletions

View File

@@ -1,14 +1,21 @@
package cn.xf.basedemo.common.exception;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
import org.springframework.http.HttpStatusCode;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.MethodArgumentNotValidException;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;
import org.springframework.web.context.request.WebRequest;
import org.springframework.web.servlet.mvc.method.annotation.ResponseEntityExceptionHandler;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.HashMap;
import java.util.Map;
/**
* @Author: xiongfeng
@@ -58,4 +65,22 @@ public class GlobalExceptionHandler extends ResponseEntityExceptionHandler{
return new GenericResponse(exception.getCode(),null,exception.getMessage());
}
/**
* 重写handleMethodArgumentNotValid 方法自定义处理参数校验错误信息
*
* @param ex
* @param headers
* @param status
* @param request
* @return
*/
@Override
protected ResponseEntity<Object> handleMethodArgumentNotValid(MethodArgumentNotValidException ex, HttpHeaders headers, HttpStatusCode status, WebRequest request) {
Map<String, String> errors = new HashMap<>();
ex.getBindingResult().getFieldErrors().forEach(error -> {
errors.put(error.getField(), error.getDefaultMessage());
});
return new ResponseEntity<>(errors, HttpStatus.BAD_REQUEST);
}
}