spring-boot如何生成元資料與javaBean進行關聯用作配置檔案提示
阿新 • • 發佈:2020-07-15
首先需要引入一個jar依賴包,以及一個maven plugin如下所示
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
</plugin>
-
-
注意:maven-compiler-plugin配置時不要配置
<configuration> <proc>none</proc> </configuration>
-
選項,否則不會自動生成spring-configuration-metadata.json檔案。
可能有些小夥伴還需要開啟Idea的Annotation Processors選項(我個人測試不需要開啟。這裡作一個補充,有些小夥伴可能會配置)配置如下圖所示:
-
定義一個javaBean用來接收配置檔案的資料,類定義如下所示:
@Data @Configuration @ConfigurationProperties(prefix= "zengpinlin") public class ZengpinlinProperties { /** 使用者名稱 */ private String userName; /** 使用者密碼 */ private String password; /** 使用者手機號碼 */ private Integer phoneNumber; /** 上下文屬性 */ private Map<String, Integer> contexts; /** 使用者年齡 */ private Integer age; }
說明:記得要加@ConfigurationProperties ,不新增會導致註釋處理器無法找到該類來做對映。如果不用lombok的@Data註解,需要自己新增getter和setter方法。上面javadoc註釋就是元資料檔案的description。這些都完成後執行maven compile,最後會在target/classes/META-INF目錄下會看到一個spring-configuration-metadata.json,如果還需要新增一些描述,可以自行建立additional-spring-configuration-metadata.json用來新增,springboot會做合併處理。
最終效果如下圖所示
總結: