在开发过程中为避免重复修改代码,往往将代码中容易发生变更的值提取出来放到配置文件中。例如数据库连接信息,使用Http调用第三方应用的网关地址等信息。
使用Sprin Boot的@ConfigurationPropertie
从配置文件中读取属性值方法多样,这里介绍的主角是Spring Boot中的@ConfigurationPropertie
注解。该注解是将具有相同前缀的属性值赋给该注解类中成员属性。简单用法示例如下:
properties文件配置如下:
在启动类中添加@ConfigurationPropertiesScan
注解即可.
在application.properties文件中配置自定义属性时让IDEA进行自动提示
按照上面的操作步骤执行后,可以正常获取配置文件中的值,但是在application.properties
中配置时没有自动提示功能。Spring Boot自带的一些配置且有自动提示功能。
要想实现这样的属性配置自动提示,需要在META-INF/spring-configuration-metadata.json
中进行配置。官网地址如下: Configuration meta-data
手动配置比较麻烦,我们可以使用Spring Boot提供的spring-boot-configuration-processor
来自动生成。在工程中引入如下依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
编译工程后效果图如下:
注意,自动提示中的属性描述信息是通过Java Doc解析而的,所以如果没有在属性上添加注释,自动提示时不会显示描述信息。
如此,如果是你开发的一个jar包提供给其他人使用时,使用者就可以在引入你的jar包后在application.properties
文件中配置属性值时得到自动提示的功能。赶紧试试吧!