java-如何设置验证字符串大小= 0或最小= 5,最大= 10?

我需要对String字段的输入进行设置验证.此字段应为空或5到10个字符.但是,如果我这样设置验证:

@Size(min=5, max=10)
private String couponCode;

值为空时,不会通过@Valid.我该如何实现?

解决方法:

您可以设置模式以接受空白值或5到10个字符:

@Pattern(regexp = "|.{5,10}")
private String couponCode;

在此,如果匹配了空字符串或.{5,10}模式,则使用| |来告诉验证器认为传递的值有效.

如果您将空白值视为空字符串,请使用以下模式:

@Pattern(regexp = "\\s*|.{5,10}")
private String couponCode;
上一篇:C#-ASP.NET身份-未调用自定义角色验证


下一篇:c#-FluentValidation NotEmpty消息未显示