JAVA常用注解


JDK自帶注解

  • @Override  重寫, 標識覆蓋它的父類的方法
  • @Deprecated    已過期,表示方法是不被建議使用的
  • @Suppvisewarnings   壓制警告,抑制警告

 

元注解

@Target   表示該注解用於什么地方,可取的值包括:

  • ElemenetType.CONSTRUCTOR       構造器聲明
  • ElemenetType.FIELD          域聲明(包括 enum 實例)
  • ElemenetType.LOCAL_VARIABLE     局部變量聲明
  • ElemenetType.METHOD         方法聲明
  • ElemenetType.PACKAGE         包聲明
  • ElemenetType.PARAMETER       參數聲明
  • ElemenetType.TYPE          類,接口(包括注解類型)或enum聲明
  • ElementType.ANNOTATION_TYPE     注解

 

@Retention   表示在什么級別保存該注解信息。可選的 RetentionPolicy 參數包括:

  • RetentionPolicy.SOURCE       注解將被編譯器丟棄
  • RetentionPolicy.CLASS        注解在class文件中可用,但會被VM丟棄
  • RetentionPolicy.RUNTIME       JVM將在運行期也保留注釋,因此可以通過反射機制讀取注解的信息。

 

@Documented   將此注解包含在 javadoc 中

 

@Inherited   允許子類繼承父類中的注解

 

 

常見第三方注解

@Repository:    用於標注數據訪問組件,即DAO組件

@Service:    用於標注業務層組件

@Transactional:    聲明這service所有方法都需要事務管理。每一個業務方法開始時都會打開一個事務

@Controller:    控制層

@Component:    把該中立的類交給spring管理

@Autowired:    自動裝配,將bean容器里的值自動注入到bean

@Path:      處理REST請求,接口路徑

@Method:    

常用的HTTP動詞有下面五個(括號里是對應的SQL命令)。

  • GET(SELECT):從服務器取出資源(一項或多項)。
  • POST(CREATE):在服務器新建一個資源。
  • PUT(UPDATE):在服務器更新資源(客戶端提供改變后的完整資源)。
  • PATCH(UPDATE):在服務器更新資源(客戶端提供改變的屬性)。
  • DELETE(DELETE):從服務器刪除資源。

還有兩個不常用的HTTP動詞。

  • HEAD:獲取資源的元數據。
  • OPTIONS:獲取信息,關於資源的哪些屬性是客戶端可以改變的。

 

@Accept和@Content-Type

@Accept:    就表示接口要返回給客戶端的數據格式
@Content-Type:    表示客戶端發送給服務器端的數據格式。這個是寫REST接口時候定義的 
   正常如果服務器沒定義Accept但是自己添加了的話會報404,沒找到對應接口。
 
 
@Produces   表示類或者方法返回的MIME數據類型

有幾種格式如下:

(1)@Produces("text/plain") 文本類型

(2)@Produces("text/html")  Html類型

(3)@Produces({"application/xml"}) Xml類型

(4)@Produces({ "application/json"}) Json類型

       可以一次注解兩種或多種的MIME類型,格式如:{"application/xml", "application/json"}這表示兩者都可以使用,但是選擇的時候一般會選擇前者,即application/xml,因為它第一次出現。

 
 
@Consumes    代表的是一個資源可以接受的 MIME 類型
 
 
@Queryparam與@Pathparam

@Queryparam:指定的是URL中的參數是以鍵值對的形式出現的,而在程序中 @QueryParam("from")  int from則讀出URL中from的值, 

例如:URL輸入為:users?from=100&to=200&orderBy=age&orderBy=name 

 

@Pathparam:URL中只出現參數的值,不出現鍵值對

例如: /users/100 

 
 
 
 

JAVA系統注解圖


免責聲明!

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



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