內容簡介
本文介紹在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:類,接口(包括注釋類型)或枚舉聲明 |
自定義類說明注解
自定義字段說明注解
為類和字段添加注解及 description
使用反射獲取注解及description
輸出效果
源碼下載
點擊下載此文中的源碼,文件不大,在打開的下載頁面中,點擊左側的普通下載即可。
不能下載請留言。