【发布时间】:2022-01-08 06:00:22
【问题描述】:
使用下面的 java 代码,在服务器端验证我已经成功验证了输入字段和选项...等。但是问题是当我单击提交按钮时,会显示一条一条错误消息,但是我想在单击提交按钮时一次显示所有错误消息。谁能告诉我应该在下面的代码中进行哪些更改来解决我的问题。
1.Code
@Component
public UserValidation implements Validator
{
// @Override
public boolean supports(Class<?> clazz) {
return User.class.isAssignableFrom(clazz);
}
// @Override
public void validate(Object target, Errors errors) {
User user = (User) target;
final String nameRegex = "[A-Za-z]+(\s[A-Za-z]+)*";
final String phoneRegex = "^[6-9]\\d{9}$";
if (user.getUserName().equals("")) {
errors.rejectValue("userrName", "userrName.required", "Error: User Name is required");
return;
}
if (user.getUserName().length() > 20) {
errors.rejectValue("userrName", "userrName.required", "Error: User Name reached maximum limit of characters allowed");
return;
}
if (user.getUserName().matches(nameRegex) == false) {
errors.rejectValue("userrName", "userrName.required", "Error: Invalid User Name ");
return;
}
if (user.getUserType().equals("0")) {
errors.rejectValue("userType", "userType.required", "Error: Select User Type");
return;
}
if (user.getUserNumber().equals("")) {
errors.rejectValue("userNumber", "userNumber.required", "Error: User Number is required");
return;
}
if (user.getUserNumber().matches(phoneRegex) == false) {
errors.rejectValue("userNumber", "userNumber.required", "Error: Invalid User Number ");
return;
}
}
【问题讨论】:
-
如果你不希望你的方法在添加错误后返回,那么你不应该在添加错误后有
return;语句
标签: java validation