1 - Добавьте необходимые зависимости в файл pom.xml из Maven Central :
- весна-загрузка-стартер-веб
- весна-загрузка-стартер-проверка
2- Добавьте необходимые аннотации в ваш bean-компонент:
@NotEmpty(message = "{email.notempty}")
@Email
private String email;
3- Чтобы читать сообщения из message.properties, вы должны определить компонент MessageSource
@Bean
public ResourceBundleMessageSource messageSource() {
final ResourceBundleMessageSource messageSource = new ResourceBundleMessageSource();
messageSource.setBasename("messages");
messageSource.setUseCodeAsDefaultMessage(Boolean.parseBoolean("true");
messageSource.setDefaultEncoding("UTF-8");
return messageSource;
}
4- Чтобы избежать игнорирования пользовательского валидатора, вы должны установить валидатор, переопределив метод getValidator (). Установите источник сообщения проверки в message.properties.
@Bean(name = "validator")
@Override
public LocalValidatorFactoryBean getValidator() {
LocalValidatorFactoryBean bean = new LocalValidatorFactoryBean();
bean.setValidationMessageSource(messageSource());
return bean;
}
5 - в файле message.properties в каталоге src / main / resources
просто определите сообщение свойства как:
email.notempty=This field is required.
примечание: если это не работает, вы все равно можете сделать это.
javax.validation.constraints.Email.message=Please provide valid email id.