zoukankan      html  css  js  c++  java
  • 参数校验JSR303

    什么是 JSR303

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

    常见的有:

    • Java Servlet 3.0 (JSR 315)

    • Java Date与Time API ( JSR 310)

    • Bean Validation 1.0 (JSR 303)

     

    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();
        }

    分组校验

    ......

  • 相关阅读:
    顺时针打印矩阵
    topK问题
    9. Palindrome Number(回文数)
    Spinner用法详解
    翻转字符串
    清雨的自助餐(斐波那契数列的应用)
    2. Add Two Numbers(链表尾插法)
    assign和weak的区别
    14-最长公共前缀
    12 13-int与罗马数字转换
  • 原文地址:https://www.cnblogs.com/huahualove/p/13917223.html
Copyright © 2011-2022 走看看