SpringBoot核心註解有:@SpringBootApplication*、@Configuration、@SpringBootConfiguration、@ComponentScan、@Conditional等等。
1.@SpringBootApplication*
用於Spring主類別上最最最核心的註解,自動化設定文件,表示這是一個SpringBoot項目,用於開啟SpringBoot的各項能力。
相當於@SpringBootConfigryation、@EnableAutoConfiguration、@ComponentScan三個註解的組合。
2.@EnableAutoConfiguration
#允許SpringBoot自動設定註解,開啟這個註解之後,SpringBoot就能根據當前類別路徑下的套件或類別來配置Spring Bean。
例如:
當前路徑下有MyBatis這個Jar包,MyBatisAutoConfiguration 註解就能根據相關參數來配置Mybatis的各個Spring Bean。
3.@Configuration
#Spring 3.0新增的註解,用來取代applicationContext.xml設定文件,所有這個設定檔裡面能做到的事情都可以透過這個註解所在的類別來進行註冊。
4.@SpringBootConfiguration
#@Configuration註解的變體,只是用來修飾Spring Boot的配置而已。
5.@ComponentScan
#Spring 3.1新增的註解,用來取代設定檔中的component- scan配置,開啟元件掃描,自動掃描套件路徑下的@Component註解進行註冊bean實例放到context(容器)中。
6.@Conditional
#Spring 4.0新增的一個註解,用來識別一個Spring Bean或Configuration配置文件,當滿足指定條件才開啟配置
7.@ConditionalOnBean
組合@Conditional註解,當容器中有指定Bean才開啟配置。
8.@ConditionalOnMissingBean
組合@Conditional註解,當容器中沒有值當Bean才可開啟配置。
9.@ConditionalOnClass
#組合@Conditional註解,當容器中有指定Class才可開啟設定。
10.@ConditionalOnMissingClass
#組合@Conditional註解,當容器中沒有指定Class才開啟設定。
11.@ConditionOnWebApplication
#組合@Conditional註解,目前專案類型是WEB專案才可開啟設定。
專案有以下三種:
① ANY:任一個Web專案
② SERVLET: Servlet的Web專案
③ REACTIVE :基於reactive -base的Web項目
12. @ConditionOnNotWebApplication
組合@Conditional註解,目前專案類型不是WEB項目才可開啟配置。
13.@ConditionalOnProperty
#組合@Conditional註解,當指定的屬性有指定的值時才可開啟配置。
14.@ConditionalOnExpression
#組合@Conditional註解,當SpEl表達式為true時才可開啟配置。
15.@ConditionOnJava
#組合@Conditional註解,當執行的Java JVM在指定的版本範圍時才開啟配置。
16.@ConditionalResource
#組合@Conditional註解,當類別路徑下有指定的資源才開啟配置。
17.@ConditionOnJndi
#組合@Conditional註解,當指定的JNDI存在時才開啟設定。
18.@ConditionalOnCloudPlatform
#組合@Conditional註解,指定的雲端平台啟動時才可開啟設定。
19.@ConditiomalOnSingleCandidate
組合@Conditional註解,當制定的Class在容器中只有一個Bean,或同時有多個但首選時才開啟配置。
20.@ConfigurationProperties
# 用來載入額外的設定(如.properties檔),可用在@ Configuration註解類別或@Bean註解方法上面。可看一看Spring Boot讀取設定檔的幾種方式。
21.@EnableConfigurationProperties
一般要配合@ConfigurationProperties註解使用,用來開啟@ConfigurationProperties註解配置Bean的支持。
22.@AntoConfigureAfter
#用在自動配置類別上面,便是該自動配置類別需要在另外指定的自動配置類別配置完畢之後。如Mybatis的自動配置類,需要在資料來源自動配置類別之後。
23.@AutoConfigureBefore
用在自動配置類別上面,便是該自動配置類別需要在另外指定的自動配置類別配置完前。
24.@Import
#Spring 3.0加入註解,用來導入一個或多個@Configuration註解修飾的配置類別。
25.@IMportReSource
#Spring 3.0加入註解,用來導入一個或多個Spring設定文件,這對Spring Boot相容舊專案非常有用,一位內有些設定檔無法透過java config的形式來設定。
以上是SpringBoot核心註解有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!