- 我可以将所有这些约束放在一个共享库中吗?
是的你可以。
- 如果是,我可以为验证消息提供翻译吗?
是的,这也是可能的。
- 如果是,我怎样才能以标准方式实现它?
例如,您有这样的约束:
package com.example.constraints;
@Target({
ElementType.FIELD,
ElementType.PARAMETER,
ElementType.METHOD
})
@Retention(RetentionPolicy.RUNTIME)
@Constraint(validatedBy = {
FooValidator.class
})
public @interface Foo
{
String message() default "{com.example.constraints.Foo.message}";
Class<?>[] groups() default {};
Class<? extends Payload>[] payload() default {};
}
ValidationMessages.properties
在类路径的根目录中指定 a (对于应用程序的默认语言)。对于额外的语言环境,您应该指定一个ValidationMessages_[locale].properties
文件。对于荷兰语语言环境,它应该是ValidationMessages_nl.properties
.
然后在这些文件中,将消息变量定义为键,将消息定义为值,如下所示:
com.example.constraints.Foo.message=Foo is not valid