springboot优雅校验参数

springboot优雅校验参数,第1张

springboot优雅校验参数

1、pom引入依赖

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

2、全局异常处理

@RestControllerAdvice 配合 @ExceptionHandler 实现全局异常处理

@RestControllerAdvice
public class GlobalException {

    @ExceptionHandler({MethodArgumentNotValidException.class})
    public Map MethodArgumentNotValidException(HttpServletRequest request, 
        HttpServletResponse response, Exception exception) throws Throwable {
       
        Map map= new HashMap();
        map.put("code", 400);
        map.put("msg",((MethodArgumentNotValidException)exception).getBindingResult().getAllErrors().get(0).getDefaultMessage());
        return  map;
    }
}

3、校验参数加注解

用@validated来校验数据,如果数据异常则会统一抛出异常,方便异常中心统一处理
@PostMapping("/add/user")
    public void addUser(@RequestBody @Validated User user) {
      //业务处理

}
@Data
public class User{

   
    @NotBlank(message = "name不能为空")
    private String name;

   
    @NotBlank(message = "mobile不能为空")
    private String mobile;

   
    @NotBlank(message = "age不能为空")
    private String age;

  
}
just  do  it!

个人公众号

个人公众号已经开通了,正在按计划建设中,以后的文章会第一时间发布在公众号中,欢迎关注!

 

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4744150.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-08
下一篇 2022-11-08

发表评论

登录后才能评论

评论列表(0条)

保存