当前位置: 首页 > 面试题库 >

Hibernate验证程序的国际化

子车修平
2023-03-14
问题内容

Hibernate验证程序是否支持国际化。我看到了罐子,可以看到各种ValidationMessages.properties文件。

我们是否可以创建自己的将国际化的自定义错误消息?我不想使用Hibernate验证程序默认提供的错误消息。

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

Hibernate验证程序支持哪些语言。在jar中,我看到了英语,法语,德语,土耳其语和蒙古语的属性文件。

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


问题答案:

I18N是Bean验证规范的组成部分。

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

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

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

使用Hibernate Validator PlatformResourceBundleLocator,还可以使用具有“
ValidationMessages”以外的名称的捆绑包,如下所示:

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


 类似资料:
  • 问题内容: 我想从hbm2ddl生成这样的内容: 这或多或少意味着存在一种表语言,其中包含iso代码以及其他一些信息。i18n表在语言表上有一个外键iso3_code,它也是主键。PK的另一部分是i18n_id。然后,测试表在字段i18n_id的表i18n上具有两个外键。 解析的hbm2ddl的输出应如下所示: 所以现在的问题是,我的hbm.xml文件看起来如何生成此表结构和此类。即使我不能完全自

  • 我是spring新手,特别是spring boot,我正在尝试使用国际化,到目前为止,我在普通控制器上使用的很好,但我无法使用spring数据rest进行Bean验证。 我正在使用以下代码启动应用程序: 我可以在控制器中很好地使用区域设置,但我不能让Bean验证尊重其他区域设置,它总是使用默认区域设置。 有什么帮助吗? 我在1.2.5版本中使用了sping-data-rest和sping-star

  • 我是编程的新手,我正在尝试实现一个小的象棋游戏。 我目前正在为每件作品的验证移动而挣扎。 字典是: 我在每个子类中都创建了一个函数(Pawn,Rook,Queen...)这应该能证明这次行动是正确的。语法类似于: 目前,我可以移动任何白色树懒或树懒上有一个黑色的部分(但我不能吃我自己),反之亦然。 我想我使用的是而不是列表列表这一事实使事情变得更加困难。我真的迷路了。这将是惊人的,如果你可以帮助我

  • 环境 Glassfish 3.1.2内置Hibernate-Validator 4.2。

  • 本实例演示了如何在Web程序中根据客户端支持的本地信息显示不同语言的信息。在本例中通过改变IE的默认语言来模拟中文和英语的用户。 例子 : 编写国际化的Web程序 1. 建立中文资源文件 在WEB-INF\classes\resources目录中建立一个I18nResource_zh_CN.properties文件,该文件的内容如下: i18n.welcome=欢迎访问国际化web程序 i18n.

  • 国际化程序需要通过Locale对象确定具体的本地信息。在Web程序中,可以通过HttpServletRequest类的getLocale方法获得客户端浏览器支持的首选本地信息(Locale对象)。在8.2.1节讲过,创建Locale对象需要指定语言和国家。在Web程序中这些信息一般是由HTTP请求消息头的Accept-Language字段指定的。 查看浏览器发给服务端的Accept-Languag