【SpringBoot】多个yml文件配置

多个yml文件配置

目标:可以将多个yml文件在application.yml文件中配置激活

分析

yml与properties配置文件除了展示形式不相同以外,其它功能和作用都是一样的;在项目中原路的读取方式不需要改变。

1)yml配置文件的特征:

  1. 树状层级结构展示配置项;
  2. 配置项之间如果有关系的话需要分行空两格;
  3. 配置项如果有值的话,那么需要在 :之后空一格再写配置项值;

application.properties配置文件修改为application.yml的话:

jdbc:
  url: jdbc:mysql://localhost:3306/pbip_db?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
      username: root
      password: root
      driver-class-name: com.mysql.cj.jdbc.Driver

key:
  dev:
    - g
    - h
    - j

2)多个yml配置文件;在spring boot中是被允许的。这些配置文件的名称必须为application-*** .yml,并且这些配置文件必须要在application.yml配置文件中激活之后才可以使用。

3)如果properties和yml配置文件同时存在在spring boot项目中;那么这两类配置文件都有效。在两个配置文件中如果存在同名的配置项的话会以properties文件的为主。

小结

在多个配置文件时,需要将这些文件在application.yml文件中进行激活:

#激活配置文件;需要指定其它的配置文件名称
spring:
  profiles:
    active: dev
  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Spring Boot 中,你可以通过使用 `@PropertySource` 注解来引入多个 YAML 配置文件,并将它们的属性值加载到应用程序中。 首先,在你的 Spring Boot 应用程序的主类上,添加 `@PropertySource` 注解,并指定要引入的配置文件路径。如下所示: ```java @SpringBootApplication @PropertySources({ @PropertySource("classpath:config1.yml"), @PropertySource("classpath:config2.yml") }) public class YourApplication { public static void main(String[] args) { SpringApplication.run(YourApplication.class, args); } } ``` 在上面的示例中,我们使用了 `@PropertySources` 注解来指定多个配置文件的路径,每个配置文件都通过 `@PropertySource` 注解来指定。你可以根据需要添加更多的 `@PropertySource` 注解来引入更多的配置文件。 然后,在你的配置文件中,可以使用 `@ConfigurationProperties` 注解来绑定配置文件中的属性值到对应的 Java 对象中。如下所示: ```java @Configuration @ConfigurationProperties(prefix = "your.prefix") public class YourConfiguration { private String property1; private String property2; // ... // getter and setter methods } ``` 在上面的示例中,我们使用了 `@ConfigurationProperties` 注解来将配置文件中以 `your.prefix` 为前缀的属性值绑定到对应的 Java 对象中。其中,`your.prefix.property1` 对应于配置文件中的属性名。 通过这种方式,你可以在 Spring Boot 应用程序中引入多个 YAML 配置文件,并将它们的属性值加载到应用程序中使用。请确保你的 YAML 配置文件的格式正确,并且在类路径下可访问。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值