我无法在我的REST API中使用Long
来验证手机号码(类型为javax.validator
)的长度。固定大小的手机号码字段应该使用什么注释?
答案 0 :(得分:0)
如果手机号码是数字字段(CREATE TABLE tokens ( id, token ) AS
SELECT 1, 10 FROM DUAL UNION ALL
SELECT 2, 3 FROM DUAL UNION ALL
SELECT 3, 0 FROM DUAL UNION ALL
SELECT 4, -1 FROM DUAL UNION ALL
SELECT 5, -9 FROM DUAL;
),则可以使用SELECT id,
GREATEST( token, 0 ) AS token
FROM tokens;
和Long
批注来控制号码的“大小”,例如:>
@Min
如果使用这些注释,请确保您的电话号码在1000000到9999999之间,因此在此示例中,您只能使用7位数字。
但是,请注意,手机号码0123456无效,因为数字是数字,所以丢失了前缀“ 0”(@Max
将改为@NotNull
@Min(1000000)
@Max(9999999)
private Long mobileNumber;
),并且您的验证将失败。您可以删除mobileNumber
注释以“解决”此问题。
或者,如果您的手机号码可以以零开头,那么将123456
字段用于您的手机号码可能更有意义。在这种情况下,您应该使用@Min
批注:
String