hibernate validator 动态返回国际化提示
一、说明
以下方法实现了读取指定国际化文件的校验器。
1. MyMessages是自定义的国际化文件,放置在src的根目录下
例如有MyMessages_en_US.properties、MyMessages_zh_CN.properties
2. Locale为想要返回的语言类型
例如传入new Locale("en","US")对应返回MyMessages_en_US的定义;
二、校验器代码
public static Validator getValidatorByLocale(Locale locale) { Locale.setDefault(locale); Validator validator = Validation.byDefaultProvider().configure() .messageInterpolator( new ResourceBundleMessageInterpolator(new PlatformResourceBundleLocator("MyMessages"))) .buildValidatorFactory().getValidator(); return validator; }
上善若水,水利万物而不争。