自动生成spring-configuration-metadata.json文件

在开发过程中为避免重复修改代码,往往将代码中容易发生变更的值提取出来放到配置文件中。例如数据库连接信息,使用Http调用第三方应用的网关地址等信息。

使用Sprin Boot的@ConfigurationPropertie

从配置文件中读取属性值方法多样,这里介绍的主角是Spring Boot中的@ConfigurationPropertie注解。该注解是将具有相同前缀的属性值赋给该注解类中成员属性。简单用法示例如下:
自动生成spring-configuration-metadata.json文件_第1张图片
properties文件配置如下:
自动生成spring-configuration-metadata.json文件_第2张图片
在启动类中添加@ConfigurationPropertiesScan注解即可.
自动生成spring-configuration-metadata.json文件_第3张图片

在application.properties文件中配置自定义属性时让IDEA进行自动提示

按照上面的操作步骤执行后,可以正常获取配置文件中的值,但是在application.properties中配置时没有自动提示功能。Spring Boot自带的一些配置且有自动提示功能。
自动生成spring-configuration-metadata.json文件_第4张图片
要想实现这样的属性配置自动提示,需要在META-INF/spring-configuration-metadata.json中进行配置。官网地址如下: Configuration meta-data
手动配置比较麻烦,我们可以使用Spring Boot提供的spring-boot-configuration-processor来自动生成。在工程中引入如下依赖:

<dependency>
    <groupId>org.springframework.bootgroupId>
    <artifactId>spring-boot-configuration-processorartifactId>
    <optional>trueoptional>
dependency>

编译工程后效果图如下:
自动生成spring-configuration-metadata.json文件_第5张图片
注意,自动提示中的属性描述信息是通过Java Doc解析而的,所以如果没有在属性上添加注释,自动提示时不会显示描述信息。
自动生成spring-configuration-metadata.json文件_第6张图片
如此,如果是你开发的一个jar包提供给其他人使用时,使用者就可以在引入你的jar包后在application.properties文件中配置属性值时得到自动提示的功能。赶紧试试吧!

你可能感兴趣的:(spring,java,spring,boot)