SpringMVC数据绑定流程之数据校验

上篇讲到数据绑定的数据转化,接下来我们开一下数据校验,这边主要讲一下JSR-303整合到SpringMVC中。

pom.xml

 
        5.2.4.Final
        1.1.0.Final
    

    javax.validation
    validation-api
    ${validation-api.version}


    org.hibernate
    hibernate-validator
    ${hibernate-validator.version}

dispatcher-servlet.xml



    
    
    

    
    
        
            
                
                classpath:messages
            
        
        
        
        
    

    
    
        
        
        
        
    

    
    
        
        
        
    

messages.properties

user.id.null=用户编号不能为空
user.name.null=用户名不能为空
user.name.length.illegal=用户名长度必须在5到20之间
user.name.illegal=用户名必须是字母
user.password.null=密码不能为空

核心类

@Data
public class User implements Serializable {
    //使用自定义错误信息
    @NotNull(message = "{user.id.null}")
    private Long id;
    @NotEmpty(message = "{user.name.null}")
    @Length(min = 5, max = 20, message = "{user.name.length.illegal}")
    @Pattern(regexp = "[a-zA-Z]{5,20}", message = "{user.name.illegal}")
    private String name;
    @NotNull(message = "{user.password.null}")
    private String password;
}
@Controller
public class UserController {
    @RequestMapping("/save")
    //BindingResult讲保存错误信息,到时候自己根据业务处理
    public String save(@Valid User user, BindingResult result) {
        if (result.hasErrors()) {
            return "error";
        }
        return "success";
    }
}

你可能感兴趣的:(SpringMVC数据绑定流程之数据校验)