Hibernatevalidation器的国际化

Hibernatevalidation器是否支持国际化。 我看到了jar,我可以看到各种ValidationMessages.properties文件。

我们可以创建自己的自定义错误消息,这些消息将被国际化吗? 我不想使用Hibernatevalidation器中默认提供的错误消息。

我们需要使用自己的自定义消息,它们应该是国际化的。

以及Hibernatevalidation器支持的语言是什么。 在jar中我看到了英语,法语,德语,土耳其语和蒙古语的属性文件。

我们可以添加更多语言,例如西class牙语,葡萄牙语等?

I18N是Bean Validation规范的组成部分。

默认情况下,从名为“ValidationMessages”的资源包中检索消息。 因此,只需为您需要的语言提供此捆绑包(例如ValidationMessages.properties),以覆盖来自Hibernate Validator的默认消息(从包“org.hibernate.validator.ValidationMessages”中检索)。

除了您提到的语言,Hibernate Validator 4.2还将提供中文( HV-359 )和西class牙语( HV-483 )消息。

如果您根本不想使用基于文件的资源包,您也可以提供自己的MessageInterpolator或ResourceBundleLocator实现。

使用Hibernate Validator的PlatformResourceBundleLocator ,也可以使用包含“ValidationMessages”之外的其他名称的bundle,如下所示:

 Validation .byProvider(HibernateValidator.class) .configure() .messageInterpolator( new ResourceBundleMessageInterpolator( new PlatformResourceBundleLocator("com.mycompany.Messages"))) .buildValidatorFactory() .getValidator();`