springboot自定义配置
Posted Alan Lau
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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());
以上是关于springboot自定义配置的主要内容,如果未能解决你的问题,请参考以下文章
全栈编程系列SpringBoot整合Shiro(含KickoutSessionControlFilter并发在线人数控制以及不生效问题配置启动异常No SecurityManager...)(代码片段
SpringBoot中级教程之SpringBoot自定义配置