Spring 自定义注解 操作日志

1.自定义注解

  1. package com.jay.demo3.aop1.myannotation;
  2.  
     
  3.  
    import java.lang.annotation.Documented;
  4.  
    import java.lang.annotation.ElementType;
  5.  
    import java.lang.annotation.Retention;
  6.  
    import java.lang.annotation.RetentionPolicy;
  7. 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 文件 找不到 这个 类型 生成 的 信息。

 

 

             

posted @ 2020-12-18 19:09  adam宋  阅读(133)  评论(0)    收藏  举报