在spring boot中幾乎可以完全棄用xml配置檔案,本文的主題是分析常用的註解。
spring最開始是為了解決ejb等大型企業框架對應用程式的侵入性,因此大量依靠配置檔案來「非侵入式」得給pojo增加功能,然而,從spring 3.x開始,spring被外界最為詬病的一點就是配置繁多,號稱「配置地獄」,各種xml檔案,出了問題非常難排查。從spring 4.x開始,spring.io提供了三種方式編織bean:
註解(annotations)列表
@responsebody
用該註解修飾的函式,會將結果直接填充到http的響應體中,一般用於構建restful的api;
@controller
用於定義控制器類,在spring 專案中由控制器負責將使用者發來的url請求**到對應的服務介面(service層)。
@restcontroller
@responsebody和@controller的合集
@componentscan
表示將該類自動發現(掃瞄)並註冊為bean,可以自動收集所有的spring元件,包括@configuration類。我們經常使用@componentscan註解搜尋beans,並結合@autowired註解匯入。
@configuration
相當於傳統的xml配置檔案,如果有些第三方庫需要用到xml檔案,建議仍然通過@configuration類作為專案的配置主類——可以使用@importresource註解載入xml配置檔案。
@import
用來匯入其他配置類。
@importresource
用來載入xml配置檔案。
@autowired
自動匯入依賴的bean
@service
一般用於修飾service層的元件
@repository
使用@repository註解可以確保dao或者repositories提供異常轉譯,這個註解修飾的dao或者repositories類會被componetscan發現並配置,同時也不需要為它們提供xml配置項。
springboot中的註解
configuration和 bean 這兩個註解一般都是搭配使用,在springboot中,官方給我們配置了很多的啟動器,而我們配置的時候往往在配置檔案properties或者yml中配置相對應的引數即可,但是官方總有沒有自動化的引數,這時候我們就需要了這個註解。例如當我們ssm shiro的時候...
springboot中的註解1
restcontroller註解等價於 responsebody controller。restcontroller和 controller的共同點是都用來表示spring某個類是否可以接收http請求。二者區別 restcontroller無法返回指定頁面,而 controller可以 前者可以直...
springboot中新增事務註解
1.首先在service層中的方法前新增 transactional service public class userservice transactional public void deletebyid integer id 2.在springboot的啟動中新增註解 enabletransa...