怎么写自定义注解

package org.example.anno;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * @Target -- 描述当前注解可以定义在什么资源上
 * 属性value
 *    ---定义具体的资源,包括:
 *      --ElementType.METHOD,可以定义在方法上
 *      --ElementType.TYPE,可以定义在类型上
 *      --ElementType.FIELD,可以定义在属性上
 *      --ElementType.PARAMETER,可以定义在方法参数上
 *
 * @Retention --当前注解在什么时候生效
 * 属性value
 * --具体的生效标记
 *  --RetentionPolicy.RUNTIME,运行时有效
 *  --RetentionPolicy.SOURCE,源码时有效
 *  --RetentionPolicy.CLASS,字节码时有效
 * @author weiguorong
 * @date 2021/2/13 19:57
 */
@Target(value = {ElementType.METHOD,ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
public @interface MyAnno4Swagger {
    //自定义注解中的属性。相当于@MyAnno4Swagger(value = "")
    String value() default "";
}

通过以上的案例讲一下大概的要点
自定义注解的格式
public @interface 注解名{

}
这格式不懂得话可以随便找一个注解Ctrl+鼠标左击进去看一下也是这样的格式

其中两个重要的注解@Target和@Retention,这两注解的常用的value值我在代码的注释中我都有写

上一篇:java注解


下一篇:Java注解的 含义 作用 分类