一般而言卓嫂,springboot 項(xiàng)目啟動(dòng)走诞,都會(huì)加載引入的Springboot start 項(xiàng)目 spring.factory文件中的指定配置類态罪,spring工廠加載配置文件定義的bean沟饥。
經(jīng)過嘗試,我想在Springboot項(xiàng)目中通過ApplicationContext對(duì)象獲取Springboot start 項(xiàng)目未暴露(未在指定配置類未申明@Bean,比如說在Springboot start 項(xiàng)目用@Component申明的bean)出來的bean蝎宇,獲取不到。
苦惱 據(jù)我猜測(cè)祷安,有兩種可能姥芥;
- 在SpringBoot start項(xiàng)目中,也存在一個(gè)spring工廠汇鞭,在Springboot項(xiàng)目啟動(dòng)時(shí)凉唐,springboot項(xiàng)目自身創(chuàng)建工廠,同時(shí)在SpringBoot start項(xiàng)目也會(huì)初始化私有的Spring工廠初始化自己的一些bean霍骄,最后SpringBoot的工廠加載SpringBoot start 指定配置類的特定的幾個(gè)bean台囱,其余的私有bean不暴漏出來
- Springboot項(xiàng)目工廠讀取Springboot start項(xiàng)目中的配置文件,根據(jù)依賴關(guān)系加載指定文件中bean后,在工廠中隱藏SpringBoot start 中未暴漏出來的bean读整,不給外部調(diào)用
先記下來簿训,后期研究,如果有明白答案的米间,請(qǐng)幫忙解惑 ??