1. 基于 JSR-303(一个数据验证的规范):
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import org.hibernate.validator.constraints.NotBlank;
public class User {
private String username;
private String password;
private int age;
@NotBlank(message="用户名不能为空")
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
@NotNull(message="密码不能为null")
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
@Min(value=10, message="年龄的最小值为10")
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
<mvc:annotation-driven/>
import javax.validation.Valid;
import org.springframework.stereotype.Controller;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class UserController {
@RequestMapping("login")
public String login(@Valid User user, BindingResult result) {
if (result.hasErrors())
return "user/login";
return "redirect:/";
}
}
使用@NotBlank等注解,然后在要验证的地方使用@Valid 标签。最后验证的结果是在BindingResult 获取,注意据说result 要紧挨着前面的@Valid,而且是一个验证一个BindingResult参数。
2. 还有就是继承Validator 接口。
手机扫一扫
移动阅读更方便
你可能感兴趣的文章