后端validated参数校验 及 全局异常处理器配

后端validated参数校验 及 全局异常处理器配

参数校验validated

引入依赖(版本由parent工程决定)

org.springframework.boot spring-boot-starter-validation

代码示例



@RestController
@RequestMapping("/user")
@Slf4j
@Validated  
public class userController {

    @Autowired
    private userService userService;

    @PostMapping("/register")
   public Result register(@Pattern(regexp = "^\\S{5,16}$") String username,@Pattern(regexp = "^\\S{5,16}$") String password)
    {

@Validated 加在类上面

@Pattern() 里面填写的是正则表达式

全局异常处理器配置

@RestControllerAdvice
public class globalException {

​    @ExceptionHandler(Exception.class)
​    public Result handleException(Exception e)
​    {
​        e.printStackTrace();
​        return Result.error(StringUtils.hasLength(e.getMessage())?e.getMessage():"操作失败");
​    }
}

现在类上面添加@RestControllerAdvice

然后在方法上添加表示对所有异常进行拦截@ExceptionHandler(Exception.class)

springboot自带StringUtils.hasLength()可以判断异常的信息是否存在,因为有的异常没有getMessage

你可能感兴趣的:(java,spring,boot,开发语言)