使用JSR验证

1.spring mvc配置文件中添加:
        <mvc:annotation-driven />
2.pom.xml中添加
          
       <dependency > 
            <groupId> org.hibernate</groupId > 
            <artifactId> hibernate-validator</artifactId>  
            <version> 5.1.0.Final</version > 
        </dependency>
       <dependency > 
            <groupId> org.slf4j</groupId > 
            <artifactId> slf4j-simple</artifactId > 
            <version> 1.7.7</ version> 
        </dependency>
 
          若编译报错,尝试其他版本。
3.pojo中添加注解
     
     @NotEmpty(message= "用户名不能为空" )
    private String userName;
 
    @Size(min=1,max=3)
    private String password;
 
    @Max(value=120,message= "年龄不能超过120岁" )
    private Integer age;
 
4.controller中添加@Valid标记。
     
     @RequestMapping(value= "/user_save" )
     public String saveUser( @Valid @ModelAttribute User user , BindingResult bindingResult ,
            Model model) {
 
        if (bindingResult .hasErrors()){
            List<ObjectError> errorList = bindingResult .getAllErrors();
            System. out .println("errorList大小为:" +errorList .size());
            for (ObjectError error : errorList ){
                System.out .println(error .getDefaultMessage());
            }
            return "AddUser" ;
        }
    }

  这里一个@Valid的参数后必须紧挨着一个BindingResult 参数,否则spring会在校验不通过时直接抛出异常。

5.jsp中显示error信息
     < form:errors path ="password" cssClass ="error" />
 

    自定义校验类型 http://exceptioneye.iteye.com/blog/1305040

    两种校验方式使用说明 http://elf8848.iteye.com/blog/1299587

原文地址:https://www.cnblogs.com/myparamita/p/5085563.html