F_S*_*idt 32 java string validation spring spring-validator
我在模型类中声明了这个字段:
@Size(min = 2, max = 200, message = "{validation.name.size}")
private String name;
Run Code Online (Sandbox Code Playgroud)
其中validation.name.size
是本地化消息的路径。问题是我不想输出诸如“名称太长或太短”之类的消息。
有没有办法使用两个不同的消息并检查最小和最大字符串长度?@Min
并且@Max
仅适用于数字类型,因此不能使用它们。字符串的替代品是什么?
小智 48
您可以只使用“@Size”注释两次:
@Size(min = 2, message = "{validation.name.size.too_short}")
@Size(max = 200, message = "{validation.name.size.too_long}")
private String name;
Run Code Online (Sandbox Code Playgroud)
是的,您可以将 @Size.List() 和 @Size 注释结合使用,如下所示:
@Size.List({
@Size(min = 2, message = "{validation.name.size.too_short}"),
@Size(max = 10, message = "{validation.name.size.too_long}")
})
Run Code Online (Sandbox Code Playgroud)