@Retention(value=CLASS)
@Target(value={TYPE,METHOD,CONSTRUCTOR})
public @interface AutoValidation
AutoValidation可以用于类(或枚举)、类(或枚举)构造器、类(或枚举)方法(如果在其它位置使用该注解,例如接口上将会产生编译期错误),
标记了AutoValidation的类、类构造器、类方法将会在编译期间按需生成入参校验代码,
使用groups()可以指定校验所用的分组,类构造器与类方法的注解优先于类注解。
例如在setUsername类方法上标记了AutoValidation注解,那么在编译期间就会自动生成如下校验代码:
public void setUsername(@NotEmpty String username) {
// 校验代码将在编译期进行插入
GlobalValidator.checkParameters(User.class, "setUsername", new Class[]{String.class}, this, new Object[]{username}, new Class[0]);
this.username = username;
}
| Modifier and Type | Optional Element and Description |
|---|---|
java.lang.Class<?>[] |
groups |
Copyright © 2022. All Rights Reserved.