Springboot常用註解及配置文件加載順序詳解

Springboot常用註解及底層實現

1、@SpringBootApplication:這個註解標識瞭一個SpringBoot工程,她實際上是另外三個註解的組合,分別是:

@SpringBootConfiguration:源碼可以看到,這個註解除瞭元註解外,實際就隻有一個@Configuration,把該類變成一個配置類,表示啟動類也是一個配置類;

@EnableAutoConfiguration:是開啟自動配置的功能,向Spring容器中導入瞭一個Selector,用來加載ClassPath下SpringFactories中所定義的自動配置類,將這些自動加載為配置Bean;

由@AutoConfigurationPackage和@Import組成,前者表示讓包中的類能夠被自動掃描到spring容器中;使用import是往Spring容器中導入一個組件,將主配置類的所在包及子包所有組件掃描加載到Spring容器;

Springboot在啟動的時候,從類路徑下的META-INF/spring.factories中獲取EnableAutoConfiguration指定的值,將這些值作為自動配置類導入到容器中,自動配置類就生效,幫我們進行自動配置工作。以前需要我們自己配置的東西,自動配置類都幫我們完成瞭。

@ComponentScan:標識掃描路徑,因為默認是沒有配置實際掃描路徑的,所以SpringBoot掃描的路徑是啟動類所在的當前目錄;

2、@Bean註解:用來定義Bean,類似於XML中的<bean>標簽,Spring在啟動時,會對加瞭@Bean註解的方法進行解析,將方法的名字作為beanName,並通過執行方法得到bean對象;

3、@Controller、@Service、@ResponseBody、@Autowired

Springboot中配置文件的加載順序

優先級從高到低,高優先級的配置覆蓋低優先級的配置,所有配置會形成互補配置;

1、命令行參數。所有的配置都可以在啟動命令行上進行指定;

2、Java系統屬性(System.getProperties)

3、操作系統環境變量;

4、jar包外部的application-{profile}.properties或.yml配置文件;可以通過制定配置文件的方式:

–spring.config.location=/bdl/application.properties

5、jar包內部的配置文件;

6、@Configuration註解類上的@PropertySource

到此這篇關於Springboot常用註解及配置文件加載順序詳解的文章就介紹到這瞭,更多相關Springboot常用註解內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: