淺談springboot一個(gè)service內(nèi)組件的加載順序
先加載自身構(gòu)造器,所以在構(gòu)造器中初始化時(shí)若使用需要注入的(即@Autowired注解的)組件相關(guān)的方法,則會(huì)報(bào)null;
然后加載注入的組件即@Autowired
最后加載@PostConstruct注解的方法,在該方法內(nèi)可以使用注入的組件。
一個(gè)service初始化的一些操作根據(jù)不同情況可以選擇在不同的地方進(jìn)行初始化
Spring boot 配置文件 加載順序springboot 啟動(dòng)會(huì)掃描以下位置的application.properties或者application.yml文件作為Spring boot的默認(rèn)配置文件
–file:./config/
–file:./
–classpath:/config/
–classpath:/
優(yōu)先級(jí)由高到底,高優(yōu)先級(jí)的配置會(huì)覆蓋低優(yōu)先級(jí)的配置;
SpringBoot會(huì)從這四個(gè)位置全部加載主配置文件;互補(bǔ)配置;
我們還可以通過spring.config.location來改變默認(rèn)的配置文件位置項(xiàng)目打包好以后,我們可以使用命令行參數(shù)的形式,啟動(dòng)項(xiàng)目的時(shí)候來指定配置文件的新位置;指定配置文件和默認(rèn)加載的這些配置文件共同起作用形成互補(bǔ)配置;
java -jar spring-boot-02-config-02-0.0.1-SNAPSHOT.jar --spring.config.location=G:/application.properties
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. Java commons-httpclient如果實(shí)現(xiàn)get及post請(qǐng)求2. 一文帶你徹底理解Java序列化和反序列化3. JS中6個(gè)對(duì)象數(shù)組去重的方法4. Python基于requests庫爬取網(wǎng)站信息5. vscode運(yùn)行php報(bào)錯(cuò)php?not?found解決辦法6. python中文本字符處理的簡(jiǎn)單方法記錄7. PHP laravel實(shí)現(xiàn)導(dǎo)出PDF功能8. Python使用Selenium自動(dòng)進(jìn)行百度搜索的實(shí)現(xiàn)9. PHP利用curl發(fā)送HTTP請(qǐng)求的實(shí)例代碼10. 資深程序員:給Python軟件開發(fā)測(cè)試的25個(gè)忠告!

網(wǎng)公網(wǎng)安備