其他分享
首页 > 其他分享> > 参数校验JSR303

参数校验JSR303

作者:互联网

什么是 JSR303

JSR 是Java Specification Requests的缩写,意思是Java 规范提案。是指向JCP(Java Community Process)提出新增一个标准化技术规范的正式请求。任何人都可以提交JSR,以向Java平台增添新的API和服务。JSR已成为Java界的一个重要标准。

常见的有:

 

 

 

 

Validator + BindingResult获取校验信息

该方法将不会抛出异常 【类似异常捕获】

  1. 通过 BindingResult 获取校验信息返回

/**
     * BindingResult 获取参数的校验信息
     *
     * 参数校验失败的 code 10086
     */
    @RequestMapping("addUserInfo")
    public R addUserInfo(@Validated User user, BindingResult result){
//        result.hasErrors() 有没有存在校验失败的情况
        if (result.hasErrors()) {
//            获取所有参数校验的异常信息 封装R对象中响应
            //        getFieldErrors() 获取所有校验失败的属性
            Map map = new HashMap();
            List<FieldError> fieldErrors = result.getFieldErrors();
            for (FieldError fieldError : fieldErrors) {
//            fieldError.getDefaultMessage() 获取参数校验的信息
                map.put(fieldError.getField(),fieldError.getDefaultMessage());
            }

            return R.error(10086,"参数校验失败").put("data",map);
        }

        return R.ok();
    }

分组校验

......

标签:Java,JSR303,校验,参数,result,JSR,fieldError,BindingResult
来源: https://www.cnblogs.com/huahualove/p/13917223.html