注解是一种标记,我们可以在标记出现时候通过AOP或者拦截器做一些特殊的业务操作和数据处理;
自定义注解需要三步:
元注解一共有四种@Target、@Retention、@Documented、@Inherited
1、@Target(常用)
- package java.lang.annotation;
-
- public enum ElementType {
- TYPE, /* 类、接口(包括注释类型)或枚举声明 */
- FIELD, /* 字段声明(包括枚举常量) */
- METHOD, /* 方法声明 */
- PARAMETER, /* 形式参数声明 */
- CONSTRUCTOR, /* 构造方法声明 */
- LOCAL_VARIABLE, /* 局部变量声明 */
- ANNOTATION_TYPE, /* 注释类型声明 */
- PACKAGE, /* 包声明 */
- TYPE_PARAMETER, /* 类型参数声明 @since 1.8*/
- TYPE_USE /* 任何类型声明 @since 1.8*/
- }
@Target 用在什么地方: 指明了修饰的这个注解的使用范围,即被描述的注解可以用在哪里。
ElementType.TYPE:接口、类、枚举、注解
ElementType.FIELD&