Spring Boot使用YAML
(YAML Ain’t Markup Language)作为配置文件的格式,通过spring-boot-starter
模块内置的spring-boot-configuration-processor
模块来解析YAML
文件。
在Spring Boot
应用中,可以通过@ConfigurationProperties
注解将YAML
文件中的配置映射到Java
对象中。例如:
import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; @Component @ConfigurationProperties(prefix = "myapp") public class MyAppProperties { private String name; private int port; // getters and setters }
在application.yml
中配置:
myapp: name: MyApp port: 8080
然后在Spring
组件中注入MyAppProperties
对象即可获取配置值。
另外,Spring Boot
还提供了@Value
注解来从YAML
文件中获取单个配置值。例如:
import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; @Component public class MyComponent { @Value("${myapp.name}") private String appName; @Value("${myapp.port}") private int appPort; // getters and setters }
这样就可以通过@Value
注解直接获取YAML
文件中的配置值。