springboot自定义配置

1、说明

springboot的开发中,我们有些时候,需要将一些参数写进yml配置,方便部署后修改,这时我们便可以使用springboot 提供的自定义配置的功能了

2、引入依赖

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

3、编写自定义的配置类

示例:

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;

/**
 * 客户端的一些配置
 */
@ConfigurationProperties(prefix = "client.config")
@Data
public class ClientConfig {
    /**
     * 基础url
     */
    private String baseUrl;
}

4、使用IDEA编译,生成 spring-configuration-metadata.json 文件

编译后生成的 spring-configuration-metadata.json文件在如下路径:

spring-configuration-metadata.json 文件的作用是让我们在 yml 或者 properties 文件中输入配置的时候,提供自动提示,如下:

另:如果上面的自动提示出现中文乱码,将 spring-configuration-metadata.json 文件的编码格式从utf-8 改成 gbk ,提示的中文便显示正常了,具体的操作如下:

1) 点击右下角的编码

 2) 切换为gbk编码

 3) covert 文件的编码格式

 4) 确认

5) 再去yml中输入配置,可以看到自动提示的中文显示已经正常了

5、在注入自定义配置,并使用

1) 在启动类上提添加注解 

@EnableConfigurationProperties({ClientConfig.class})

2) 使用配置

@Autowired
 private ClientConfig config;

... //此处省略部分代码

System.out.println("自定义的配置:"+config.getBaseUrl());
原文地址:https://www.cnblogs.com/lkc9/p/11833961.html