Пример пароля Spring MVC
В Spring MVC вы можете использовать тег<form:password /> для отображения поля пароля HTML. Например,
Это будет отображать следующий HTML-код
Note
В документации Spring упоминается, что атрибут «showPassword» будет отображать значение пароля, но это не удалось в моем тестировании, возможно, вы можете попробовать это самостоятельно.
В этом руководстве мы покажем вам, как использовать тег формы Spring «password» для полейrender two HTML password - «пароль» и «confirmPassword». Кроме того, добавьте проверки валидатора в оба поля пароля: не должно быть пустым, а поле «пароль» должно совпадать с полем «verifyPasswod».
1. контроллер
SimpleFormController для обработки значения формы.
Файл: PasswordController.java
package com.example.customer.controller;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.validation.BindException;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.SimpleFormController;
import com.example.customer.model.Customer;
public class PasswordController extends SimpleFormController{
public PasswordController(){
setCommandClass(Customer.class);
setCommandName("customerForm");
}
@Override
protected ModelAndView onSubmit(HttpServletRequest request,
HttpServletResponse response, Object command, BindException errors)
throws Exception {
Customer customer = (Customer)command;
return new ModelAndView("CustomerSuccess","customer",customer);
}
}
2. модель
Объект Customer для хранения значения пароля.
Файл: Customer.java
package com.example.customer.model;
public class Customer{
String password;
String confirmPassword;
//getter and setter methods for password and confirmPassword
}
3. Форма валидатора
Создайте класс валидатора пароля, чтобы проверить оба поля пароля: не должно быть пустым, «пароль» и «Подтверждение пароля» должны совпадать. В противном случае получите соответствующее сообщение из комплекта ресурсов (файл свойств).
Файл: PasswordValidator.java
package com.example.customer.validator;
import org.springframework.validation.Errors;
import org.springframework.validation.ValidationUtils;
import org.springframework.validation.Validator;
import com.example.customer.model.Customer;
public class PasswordValidator implements Validator{
@Override
public boolean supports(Class clazz) {
//just validate the Customer instances
return Customer.class.isAssignableFrom(clazz);
}
@Override
public void validate(Object target, Errors errors) {
ValidationUtils.rejectIfEmptyOrWhitespace(errors, "password",
"required.password", "Field name is required.");
ValidationUtils.rejectIfEmptyOrWhitespace(errors, "confirmPassword",
"required.confirmPassword", "Field name is required.");
Customer cust = (Customer)target;
if(!(cust.getPassword().equals(cust.getConfirmPassword()))){
errors.rejectValue("password", "notmatch.password");
}
}
}
Файл: message.properties
required.password = Password is required! required.passwordConfirm = Confirm password is required! notmatch.password = Password and Conform password is not match!
4. View
Страница JSP для использования тега формы Spring «password» для отображения двух полей пароля HTML и помещения некоторых стилей CSS для выделения сообщения об ошибке.
Файл: CustomerForm.jsp
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
Spring's form password example
Password :
Confirm Password :
Если форма отправлена, отобразите успешную страницу и отобразите введенное значение пароля.
Файл: CustomerSuccess.jsp
Spring's form password example
Password : ${customer.password}
Confirm Password : ${customer.confirmPassword}
5. Конфигурация Spring Bean
Связать все это ~
/WEB-INF/pages/ .jsp
6. Demo
Доступ к странице -http://localhost:8080/SpringMVCForm/password.htm

Если при отправке формы «пароль» не совпадает с «паролем подтверждения», отобразите и выделите сообщение об ошибке.

Если форма отправлена успешно, просто отобразите введенное значение пароля.

Скачать исходный код
Скачать -SpringMVCForm-Password-Example.zip (9KB)