哪个注释仅用于接受数字作为输入?

Which annotation to use for only accept number as input?

下面的注册字段应该只接受数字。我应该使用哪个注解?我进行了一项研究,人们在谈论@Digits 和@Pattern,但我不确定这是我需要的

@Length(min=13, max=13)
private Long registration;

参数类型为长整型,因此它只接受数字,您甚至不必验证它。

您可以针对不同的目的进行验证,如下所示。

如果它应该只接受正数。

@Min(value = 0L, message = "The value must be positive")
private Long value;

或使用正则表达式模式。

@Pattern(regexp = "[\s]*[0-9]*[1-9]+",message="msg")

如果只允许正数,那么您可以使用@Positive 或@PositiveOrZero。 否则 @Pattern 最好覆盖所有验证。