Spring Boot 2.x基礎教程之配置元數(shù)據(jù)的應用
在使用Spring Boot開發(fā)應用的時候,你是否有發(fā)現(xiàn)這樣的情況:自定義屬性是有高量背景的,鼠標放上去,有一個Cannot resolve configuration property
的配置警告。
如果不對于這個警告覺得煩,想要去掉,那么可以通過設置來去除:
但是,我的建議是不要去掉,因為這個警告正好可以通過高亮來區(qū)分你的自定義配置以及框架配置,可以讓你快速的分辨哪些是自定義的。
如果你實在想去掉,那么也不建議用上面說的方法,而是建議通過完善配置元數(shù)據(jù)的方式來完成。所以,今天就來具體說說配置元數(shù)據(jù)的應用!
啥是配置元數(shù)據(jù)?
我們不妨打開一個已經(jīng)創(chuàng)建好的Spring Boot項目,查看一下它的Spring Boot依賴包,可以找到如下圖的一個json文件:
這里報錯的就是配置的元數(shù)據(jù)信息。有沒有發(fā)現(xiàn)這些name
的值都很熟悉?其中description
是不是也很熟悉?對,這些就是我們常用的Spring Boot原生配置的元數(shù)據(jù)信息。
這下知道配置元數(shù)據(jù)可以用來做啥了吧?它可以幫助IDE來完成配置聯(lián)想和配置提示的展示。
而我們自定義配置之所以會報警告,同時也沒有提示信息,就是因為沒有這個元數(shù)據(jù)的配置文件!
配置元數(shù)據(jù)的自動生成
既然知道了原理,那么接下來我們嘗試用一下配置元數(shù)據(jù)試試!
第一步:創(chuàng)建一個配置類,定義一個自定義配置
@Data @Configuration @ConfigurationProperties(prefix = "com.didispace") public class DidiProperties { /** * 這是一個測試配置 */ private String from; }
第二步:在pom.xml
中添加自動生成配置元數(shù)據(jù)的依賴
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-configuration-processor</artifactId> </dependency>
第三步:mvn install
下這個項目。
此時我們可以在工程target目錄下找到元數(shù)據(jù)文件:
同時,我們在配置文件中嘗試編寫這個自定義的配置項時,可以看到編譯器給出了聯(lián)想和提示:
并且,編寫完配置之后,也沒有高亮警告了!
代碼示例
本文的相關(guān)例子可以查看下面?zhèn)}庫中的chapter1-4
目錄:
Github:https://github.com/dyc87112/SpringBoot-Learning/
Gitee:https://gitee.com/didispace/SpringBoot-Learning/
到此這篇關(guān)于Spring Boot 2.x基礎教程之配置元數(shù)據(jù)的應用的文章就介紹到這了,更多相關(guān)Spring Boot 2.x配置元數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringBoot3集成iText實現(xiàn)PDF導出功能
不知道小伙伴們在項目中有沒有遇到過導出 PDF 的需求,小編在之前的 tienchin 項目中有一個合同導出的功能,需要將文檔導出為PDF,將文檔導出為 PDF 有很多方案,不同方案的優(yōu)缺點也各不相同,今天小編就和大家演示一個,感興趣的小伙伴跟著小編一起來看看吧2024-10-10Java8新特性之JavaFX 8_動力節(jié)點Java學院整理
這篇文章主要介紹了Java8新特性之JavaFX 8的相關(guān)知識,非常不錯,具有參考借鑒價值,需要的朋友參考下吧2017-06-06IntelliJ IDEA設置代碼的快捷編輯模板Live Templates
今天小編就為大家分享一篇關(guān)于IntelliJ IDEA設置代碼的快捷編輯模板Live Templates,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2018-10-10Spark調(diào)優(yōu)多線程并行處理任務實現(xiàn)方式
這篇文章主要介紹了Spark調(diào)優(yōu)多線程并行處理任務實現(xiàn)方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-08-08解析ConcurrentHashMap: transfer方法源碼分析(難點)
ConcurrentHashMap是由Segment數(shù)組結(jié)構(gòu)和HashEntry數(shù)組結(jié)構(gòu)組成。Segment的結(jié)構(gòu)和HashMap類似,是一種數(shù)組和鏈表結(jié)構(gòu),今天給大家普及java面試常見問題---ConcurrentHashMap知識,一起看看吧2021-06-06