我有一个名为 User 的实体,我想验证一个手机号码字段
手机号码字段不是强制性的,它可以留空,但它应该是 一个 10 位数字。
如果用户输入任何长度 小于 10 位 的值,则应抛出错误。
下面是我的用户类。
public class User {
@Size(min=0,max=10)
private String mobileNo;
}
当我如上所述使用 @Sized 注释时,我可以验证大于 10 的值,但如果用户输入的数字少于 10 位,则不会引发错误。
我的要求是,如果用户将有效的 mobileNo 字段留空,但如果输入了一个值,则验证应确保输入的数字为 10 位数字且仅为 10 位数字。
我应该为这个要求使用哪个注释?
原文由 Ankur Raiyani 发布,翻译遵循 CC BY-SA 4.0 许可协议
@Size(min=10,max=10)
如果空白表示空值,则可以完成这项工作。如果你不放
@NotNull
注释,null
值将通过验证。如果您的空白表示空字符串,那么您需要使用
@Pattern
验证器:这匹配空字符串或 10 位数字。