在Spring Boot中,YAML文件可以使用多文档块来组织和分隔不同的配置信息
要在Spring Boot的YAML文件中使用多文档块,请按照以下步骤操作:
创建一个名为application.yml(或application.yaml)的文件,并将其放在项目的src/main/resources目录下。
在application.yml文件中,使用---符号来分隔不同的文档块。每个文档块都可以包含自己的配置信息。例如:
# 第一个文档块spring: datasource: url: jdbc:mysql://localhost:3306/db1 username: user1 password: pass1---# 第二个文档块spring: datasource: url: jdbc:mysql://localhost:3306/db2 username: user2 password: pass2在Spring Boot应用程序中,您可以使用@ConfigurationProperties注解将这些配置信息绑定到Java类。例如,创建一个名为DataSourceProperties的类,并使用@ConfigurationProperties注解将配置信息绑定到该类:import org.springframework.boot.context.properties.ConfigurationProperties;@ConfigurationProperties(prefix = "spring.datasource")public class DataSourceProperties { private String url; private String username; private String password; // getters and setters}在Spring Boot应用程序的主类中,使用@EnableConfigurationProperties注解启用DataSourceProperties类:import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.boot.context.properties.EnableConfigurationProperties;@SpringBootApplication@EnableConfigurationProperties(DataSourceProperties.class)public class MyApplication { public static void main(String[] args) { SpringApplication.run(MyApplication.class, args); }}现在,您可以在Spring Boot应用程序中使用DataSourceProperties类来访问YAML文件中的配置信息。例如,您可以在某个服务类中注入DataSourceProperties并使用它:import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Service;@Servicepublic class MyService { @Autowired private DataSourceProperties dataSourceProperties; public void doSomething() { System.out.println("URL: " + dataSourceProperties.getUrl()); System.out.println("Username: " + dataSourceProperties.getUsername()); System.out.println("Password: " + dataSourceProperties.getPassword()); }}通过这种方式,您可以在Spring Boot的YAML文件中使用多文档块来组织和分隔不同的配置信息。


