Spring Boot 应用程序支持 YAML 作为 application.properties 文件的替代方案。 YAML 不是一种标记语言,但它允许您在分层配置中定义属性。
YAML 的解析器称为 SnakeYAML,它由 spring-boot-starters 自动添加到类路径中,因此您无需配置任何额外的内容来支持 YAML 如果您使用分层结构,则非常方便配置数据。 Spring Boot 属性按组进行组织,例如服务器、数据库等。
让我们看一个来自 application.properties 的示例,以及如何将其转换为 YAML:
database.host = localhost database.user = admin
在 application.yml 中:
database: host: localhost user: admin
YAML 文件的主要优点是它可以在单个 YAML 文件中包含多个配置文件的配置。 Spring Boot 提供了一个 spring.profiles 键来指示文档何时应用。让我们看看以下示例,了解如何在单个 YAML 文件中定义多个特定于配置文件的配置:
#Used for all profiles logging.level: org.springframework: INFO #'dev' profile only spring.profiles: dev database: host: localhost user: dev #'prod' profile only spring.profiles: prod database: host: 192.168.200.109 user: admin
在这个 application.yml 文件中,我们使用 spring.profile 键根据两个配置文件 dev 和 prod 定义了数据库设置。在文件中,“—”表示配置文件之间的分隔。
如果您在同一个应用程序中同时拥有 application.properties 和 application.yml,则 application.yml 将覆盖 application.properties 中定义的设置。
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
内容来源于网络,如有侵权,请联系作者删除!