Spring boot 自定義注解,Java通過反射獲取注解,及注解的說明,附源碼下載!


內容簡介

  本文介紹在Java中 Spring 框架下自定義注解的聲明和使用,並利用反射來獲取到自定義注解及注解的屬性和值。

使用到的元注解說明

  先來了解一下用到的元注解。

@Documented 該元注解表明其他或自定義的注解應該被 javadoc 工具記錄. 默認情況下, javadoc 是不包括注解的. 但如果聲明注解時指定了 @Documented,則它會被 javadoc 之類的工具處理, 所以注解類型信息也會被包括在生成的文檔中,是一個標記注解,沒有成員。
@Retention 該元注解用來指示其他或自定義注解類型保留的生命周期。@Retention 注解有一個屬性value,為 RetentionPolicy 枚舉類型,該枚舉決定了 @Retention 注解應該如何去保留的生命周期,也可理解為 @Rentention 搭配 RententionPolicy 使用。RetentionPolicy 有3個值:CLASS、RUNTIME和SOURCE。

RetentionPolicy.SOURCE:注解只保留在源文件,當Java文件編譯成class文件的時候,注解被遺棄;

RetentionPolicy.CLASS:注解被保留到class文件,但jvm加載class文件時候被遺棄,這是默認的生命周期;

RetentionPolicy.RUNTIME:注解不僅被保存到class文件中,jvm加載class文件之后,仍然存在,所以在程序運行時可以獲取到它們;

@Target 指示注解適用的上下文,如類、屬性、方法等,使用枚舉 java.lang.annotation.ElementType 的值來表示。

ElementType.TYPE:類,接口(包括注釋類型)或枚舉聲明
ElementType.FIELD:字段聲明(包括枚舉常量)
ElementType.METHOD:方法聲明
ElementType.PARAMETER:形式參數聲明
ElementType.CONSTRUCTOR:構造函數聲明
ElementType.LOCAL_VARIABLE:局部變量聲明
ElementType.ANNOTATION_TYPE:注解類型聲明
ElementType.PACKAGE:包聲明
ElementType.TYPE_PARAMETER:類型參數聲明(1.8及以上版本)
ElementType.TYPE_USE:使用類型(1.8及以上版本)

自定義類說明注解

自定義字段說明注解

為類和字段添加注解及 description

使用反射獲取注解及description

 

輸出效果

源碼下載

點擊下載此文中的源碼,文件不大,在打開的下載頁面中,點擊左側的普通下載即可。

不能下載請留言。 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM