Spring 自定义注解 操作日志
1.自定义注解
-
package com.jay.demo3.aop1.myannotation;
-
-
import java.lang.annotation.Documented;
-
import java.lang.annotation.ElementType;
-
import java.lang.annotation.Retention;
-
import java.lang.annotation.RetentionPolicy;
-
import java.lang.annotation.Target;
// 业务注解分类 -- 定义: 运行期间 基于方法 的 注解
* 常用注解说明: 1:。RetentionPolicy (保留 策略) 是 一个 enum 类型, 有三个 值:
source: -- 这个 annotation 类型 的 信息 只会 保留 在 程序 源码里, 源码 如果 经过 了 编译 后 ,annotation 的 数据 就会 消失。并不会 保留 在 编译后 的 。class 文件里。
class -- 这个 annotation 类型 的 信息 会 保留 在 程序 的 源码中,同时也会 保留 在 编译好 的 .class 文件中。 在执行的时候,并不会把这一些 信息 加载到虚拟机 (JVM) 中去, 注意 一下, 当你 没有设定 一个 annotation 类型 的 Retention 时,系统默认值是 class。
Runtime -- 在 源码, 编译好的 .class 文件中 保留信息, 在 执行 的时候 会 把 这一些 信息 加载到 JVM 中去。
2. ElementType @Target 中 的 ElementType 用来 指定 Annotation 类型 可以 用在哪些 元素上。
Type: -- 在 class Interface ,Enum, 和 annotation 类型上
Field -- 属性上
Method -- 方法上
Paramter /pe'raemiter/ -- 参数上
Constructor -- 构造函数上
Local_Variable -- 局部变量
Annotation_Type -- annotation 类型上
package -- 包 上
3. Documented -- 让 这个 annotation 类型的 信息 能够 显示 在 api 说明 文档上。如果 没有 添加 的话, 使用 javadoc 生成 的 API 文件 找不到 这个 类型 生成 的 信息。

浙公网安备 33010602011771号