spring boot自定义配置文件并且提示

SpringBoot项目中配置文件是必不可少的,随着配置的大量增加,如果将所有的配置都放在框架自带的application.properties文件中,就会导致该过度臃肿且分类不够明确,为解决这一问题,我们常常需要自定义配置文件,此时就会带来一个问题,那就是自定配置文件无法被框架所识别(如果被识别,配置文件会带有一个小绿色的叶子),框架无法识别也就是导致输入配置时,没有相应的提示。

1、添加依赖

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-configuration-processor</artifactId>
    <optional>true</optional>
</dependency>

配置spring-boot-maven-plugin以防止repackage目标将依赖项添加到 jar 中:

<project>
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <excludes>
                        <exclude>
                            <groupId>org.springframework.boot</groupId>
                            <artifactId>spring-boot-configuration-processor</artifactId>
                        </exclude>
                    </excludes>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

2、添加配置文件my-config.yml

jwt:
  algorithm: HS256
  expires: 2

并创建一个对应的类:
创建这个类不是必须,我这里只是想说明,自己写的配置类,也可以被提示,并不仅仅只提示spring框架的配置。

@Data
@Configuration
@ConfigurationProperties(prefix = "jwt", ignoreUnknownFields = true)
@PropertySource("classpath:my-config.yml")
public class JWTConfig {
   /** 加密方式 */
   String algorithm;

   /** 过期时间,单位分钟 */
   long expires;
}

重新clean项目,在\target\classes\META-INF目录会生成spring-configuration-metadata.json。里面存储的是我们自定义的配置文件的提示信息。
在这里插入图片描述

3、让自定义的配置文件被框架管理

在这里插入图片描述
在这里插入图片描述

4、验证效果

自定义的配置 和 spring框架的配置都能提示
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值