straints 是 Java 中用于数据验证的注解,其中并没有直接支持正则表达式的注解。但是可以通过自定义注解来实现对正则表达式的支持。
例如,可以定义一个名为 @Pattern 的注解,并在注解中使用正则表达式来限制字符串的格式:
```java
import javax.validation.Constraint;
import javax.validation.Payload;
import java.lang.annotation.*;
Target({ElementType.FIELD, ElementType.PARAMETER})
Retention(RetentionPolicy.RUNTIME)
Constraint(validatedBy = {})
public @interface Pattern {
String message() default "Invalid format";
Class<?>[] groups() default {};
Class<? extends Payload>[] payload() default {};
String regexp();
}
```
然后在需要使用该注解的地方进行如下配置:
```java
public class User {
正则匹配注解 @Pattern(regexp = "^\\w+([-+.]\\w+)*@\\w+([-.]\w+)*\\.\\w+([-.]\\w+)*$", message = "Invalid email format")
private String email;
}
```
这样,在对 User 对象进行校验时,如果 email 字段的值不符合指定的正则表达式,就会抛出异常并显示相应的错误信息。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论