SpringBoot註解

常見註解

1、@SpringBootApplication

@SpringBootApplication註解是SpringBoot的核心註解,用於標註程序是一個SpringBoot程序,它是一個組合註解,由多個註解組合而成
等同於以下三個註解一起使用:
@CompomemtScan:默認掃描@SpringBootApplication類所在包的同級目錄以及它的子目錄
@SpringBootConfiguration:繼承自@Configuration,二者功能一致,標註當前類是配置類,並會把當前類內部聲明的一個或多個以@Bean註解標記的方法示例納入到spring容器中,並且示例名就是方法名
@EnableAutoConfiguration:根據你添加的jar包來配置你項目的默認配置,比如根據spring-boot-starter-web,來判斷你的項目是否需要添加了webmvc和tomcat

2、條件註解

條件註解用於設置當前配置文件的加載條件,比如在某些情況下才會加載,按照使用情況,分爲以下幾種:
1.類條件註解
2.對象條件註解
3.屬性條件註解
4.資源條件註解
5.web程序註解
6.spel表達式註解

2.1、類條件註解

@ConditionalOnClass:此註解是指定當前配置必須在指定類存在的情況下才會觸發,比如redis的自動配置
@ConditionalOnMissingClass:此註解用於指定必須在缺少某個類的情況下才會生效,classpath中不存在該類時起效

2.2、對象類型註解

@ConditionalOnBean:DI容器中存在該類型Bean時起效
@ConditionalOnMissingBean:DI容器中不存在該類型Bean時起效
@ConditionalOnSingleCandidate:DI容器中該類型Bean只有一個或@Primary的只有一個時起效

2.3、屬性註解

@ConditionalOnProperty:參數設置或者值一致時起效

2.4、spel表達式註解

@ConditionalOnExpression:spel表達式結果爲true時起效

2.5、資源註解

@ConditionalOnResource:指定的文件存在時起效

2.6、web應用註解

@ConditionalOnWebApplication:web應用環境下起效
@ConditionalOnNotWebApplication:非web應用環境下起效

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章