一、场景
当使用复合注解时,需要将多个注解包含到一个注解中时,注解字段是必填的,这时候需要处理
二、解决方法
复合注解
@Documented
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface DataFilter {
/**
* 条件1
*/
Condition org() default @Condition(enabled = false);
/**
* 条件2
*/
Condition dept() default @Condition(enabled = false);
}
原子注解
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface Condition {
/**
* 是否开启
*
* @return 默认开启
*/
boolean enabled() default true;
}
标签:必填,default,enabled,多层,interface,注解,Condition
From: https://blog.51cto.com/u_15814313/8341447