【发布时间】:2018-01-03 06:54:19
【问题描述】:
在我的 Spring Boot 应用程序中。我有用户类:
public class User {
private Long id;
@NotEmpty(message="Field is required.")
@Size(max=50, message="Field cannot exceed 50 characters in length.")
private String username;
@NotEmpty(message="Field is required.")
@Size(max=50, message="Field cannot exceed 50 characters in length.")
private String name;
@NotEmpty(message="Field is required.")
@Email(message="Please enter valid email address.")
private String email;
.... getter and setter here....
}
我创建了用户注册表单,用于验证姓名、用户名和电子邮件。
像这样:
@RequestMapping(value="/user/register", method= RequestMethod.GET)
public String createUserForm(User user){
return "user/create";
}
@RequestMapping(value="/user/register", method= RequestMethod.POST)
public String createUser(@Valid User user, BindingResult bindingResult){
if (bindingResult.hasErrors()) {
return "users/create";
}
//Here code to save user
return "users/createdSuccess";
}
现在我想为用户创建忘记密码页面。忘记密码页面仅包含电子邮件地址。但是如果我使用验证用户模型,它总是会出错,因为添加了名称和用户名属性的注释。
如何忽略忘记密码页面的名称和用户名注释并仅验证电子邮件地址。
@RequestMapping(value="/account/forgot", method= RequestMethod.GET)
public String forgotPassForm(User user){
return "users/forgotPassword";
}
@RequestMapping(value="/account/forgot", method= RequestMethod.POST)
public String resetPass(@Valid User user, BindingResult bindingResult){
if (bindingResult.hasErrors()) {
return "users/forgotPassword";
}
return "users/passwordEmailSent";
}
【问题讨论】:
标签: java spring-mvc spring-boot