前言
今天分享的並不是小知識,而是踩過的兩個坑,我先踩為敬,希望各位看完勿入、勿入!
坑點 1
1。1 描述
使用 批次注入 中配置屬性,剛寫完這行程式碼,檔案標籤欄下方立馬出現如下報錯資訊:
報錯資訊的中文大意是:
在類路徑當中找不到 配置註解處理器
雖然不影響注入配置屬性值,但是很影響程式碼美觀,造成身心的不愉悅!
1。2 填坑
點選,報錯文字後面連結:
緊接著開啟這個頁面:
啊這,行吧……那我就直接給出兩種解決方案:
治標又治本式
,在 檔案中加入 依賴:
坑點 2
2。1 描述
關於:配置檔案中屬性如何對映到配置類中的靜態成員變數上?
配置檔案
配置類
這個配置類包含四個成員變數,分別對應配置檔案中的 下的屬性,前三個為普通變數, 為靜態屬性,因為使用後期使用頻率較多,為了使用
類名.
的形式呼叫方便且快捷地拿到全域性配置的檔案路徑。
注意:千萬別漏了 註解,該註解將 放到 容器之中,交由 管理。
@Value 和 @ConfigurationProperties 兩者的區別?
註解可以透過全限定名進行配置的繫結,屬於
顯式繫結
, 註解其實就是相當於使用了多個 同時繫結,屬於
隱式繫結
的,這就意味著在編寫配置檔案時,只需和類中的屬性名保持一致即可,如果類中的屬性名採用的是駝峰命名法,則使用短橫(-)連線即可。
紙上得來終覺淺,正當我執行測試用例,準備得意洋洋看到控制檯輸出 檔案路徑結果時, 一閃而過,我直接愣住,人傻掉……
2。2 填坑
嘗試了很多中方法仍然無效,但是透過自動注入能拿到非靜態的其他屬性值,山重水複疑無路之際,我決定尋求同學的幫助,從他口中得知是靜態屬性的緣故,就在我思考 “
靜態屬性就一定注入不了值嗎?
”,納悶的我看到了 的 方法,其他的屬性都是透過賦值方法進行值注入的,那麼眼前這個方法為何不可呢?原來是我把它的賦值方法標明為 了,導致配置屬性注入時無法呼叫該方法。
去掉 關鍵字,我拿到了我想要的檔案路徑:
結尾
撰文不易,歡迎大家點贊、評論,你的關注、點贊是我堅持的不懈動力,感謝大家能夠看到這裡!Peace & Love。