SpringBoot自動裝配的原理


1.SpringApplication.run(AppConfig.class,args);執行流程中有refreshContext(context);這句話.

2.refreshContext(context);內部會解析我們的配置類上的標簽.實現自動裝配功能的注解@EnableAutoConfiguration

3.會解析@EnableAutoConfiguration這個注解里面的@Import引入的配置類.AutoConfigurationImportSelector

4.AutoConfigurationImportSelector這個類中有這個方法.SpringFactoriesLoader.loadFactoryNames(getSpringFactoriesLoaderFactoryClass(), getBeanClassLoader());

5.SpringFactoriesLoader.loadFactoryNames的作用就是讀取jar包中的/項目中的META-INF/spring.factories文件.

6.spring.factories配置了自動裝配的類.比如:com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure

7.根據條件給我們自動裝配Bean


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM