AtLeastOneNonNull.java
697 Bytes
package com.lego.common.annotation;
/**
* @author chentao
* @date 2025/4/23
*/
import javax.validation.Constraint;
import javax.validation.Payload;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@Constraint(validatedBy = AtLeastOneNonNullValidator.class)
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
public @interface AtLeastOneNonNull {
String message() default "At least one field must be non-null";
Class<?>[] groups() default {};
Class<? extends Payload>[] payload() default {};
String[] fields(); // 指定需要校验的字段名数组
}