@configuration:表示將該類作用springboot配置檔案類
@enableautoconfiguration:表示程式啟動時,自動載入springboot預設的配置
@componentscan:表示程式啟動是,自動掃瞄當前包及子包下所有類
@enablediscoveryclient && @enableeurekaclient
@enablediscoveryclient基於spring-cloud-commons,@enableeurekaclient基於spring-cloud-netflix,如果選用的註冊中心是eureka,那麼就推薦@enableeurekaclient,如果是其他的註冊中心,那麼推薦使用@enablediscoveryclient。
@componentscan && @configuration && @enableautoconfiguration
@componentscan 如果不設定basepackage的話 缺省會掃瞄包的所有類,所以最好還是寫上basepackage (@componentscan(),減少載入時間。預設掃瞄**/*.class
路徑 比如這個註解在com.wuhulala 下面 ,那麼會掃瞄這個包下的所有類還有子包的所有類,比如com.wuhulala.service包的應用
@configuration 表示這個類中定義了bean,會把這個類中bean載入到spring容器中
@enableautoconfiguration表示 會在你開啟某些功能的時候自動配置,這個註解告訴spring boot根據新增的jar依賴猜測你想如何配置spring。由於spring-boot-starter-web新增了tomcat和spring mvc,所以auto-configuration將假定你正在開發乙個web應用,並對spring進行相應地設定。
@enabletransactionmanagement && @transactional
spring boot 使用事務非常簡單,首先使用註解 @enabletransactionmanagement (啟註解事務管理,等同於xml配置方式的 )開啟事務支援後,然後在訪問資料庫的service方法上新增註解 @transactional 便可。
@async && @enableasync
@enableasync註解的意思是可以非同步執行,就是開啟多執行緒的意思。可以標註在方法、類上。
為了讓@async註解能夠生效,需要在spring boot的主程式中配置@enableasync
@async所修飾的函式不要定義為static型別,這樣非同步呼叫不會生效
@bean && @configuration
@bean標註在方法上(返回某個例項的方法),等價於spring的xml配置檔案中的,作用為:註冊bean物件
@configuration標註在類上,相當於把該類作為spring的xml配置檔案中的,作用為:配置spring容器(應用上下文)
@loadbalanced
spring cloud的commons模組提供了乙個@loadbalanced註解,方便我們對resttemplate新增乙個loadbalancerclient,以實現客戶端負載均衡。通過原始碼可以發現這是乙個標記註解,我們可以通過ribbon實現客戶端的負載均衡功能。
springcloud常用註解
1 在主程式類名上新增註解 enableeurekaserver 開啟eureka註冊中心功能 2 在主程式類名上新增註解 enablediscoveryclient 將自己自動註冊到註冊中心 3 給容器中注入乙個resttemplate並使用ribbon進行負載均衡呼叫 loadbalanced ...
springcloud常用註解
註解 說明 loadbalanced 來自springcloud commons模組,新增後可以使用ribbon負載均衡 eableeurekaserver eableeurekaclient 選用eureka註冊中心時 開啟服務端和客戶端 eablediscoveryclient 來自spring...
Springcloud常用元件
一 eureka netfix下 雲端服務發現,乙個基於 rest 的服務,用於定位服務,以實現雲端中間層服務發現和故障轉移。二 spring cloud config spring下 配置管理工具包,讓你可以把配置放到遠端伺服器,集中化管理集群配置,目前支援本地儲存 git以及subversion...