gpt4 book ai didi

spring - application.properties 和 application.yml 可以混用吗?

转载 作者:可可西里 更新时间:2023-11-01 10:03:32 24 4
gpt4 key购买 nike

使用 spring-boot 版本 1.2.5

在开发中,我试图默认我的应用程序使用本地托管的 mongo 数据库

./gradlew bootrun

在 aws 中,我想使用托管在 ec2 实例上的 mongo 数据库

jar -jar my.jar -Dspring.profiles.active=aws

应用程序属性

spring.profiles.active=development

应用程序.yml

spring:
profiles: development
data:
mongodb:
host: 10.11.12.13
port: 27017
---
spring:
profiles: aws
data:
mongodb:
host: ec2-xyz.compute-1.amazonaws.com
port: 27017

但是,在开发中运行时,mongo 会尝试连接到 localhost:27017(这是默认的 spring-mongo 行为)

编辑:实际上,我认为这是可行的。我不确定最初导致错误的原因

编辑:我也可以将所有这些移动到 YAML 文件中

最佳答案

我最初的解决方案实际上是正确的。

我最终将 application.properties 移到了 application.yml 中。

应用程序.yml

spring:
profiles:
active: development
---
spring:
profiles: development
data:
mongodb:
host: 10.11.12.13
port: 27017
---
spring:
profiles: aws
data:
mongodb:
host: ec2-x-y-z-a.compute-1.amazonaws.com
port: 27017

开发配置文件可以设为“默认”

默认为开发配置的application.yml

spring:
data:
mongodb:
host: 10.11.12.13
port: 27017
---
spring:
profiles: aws
data:
mongodb:
host: ec2-x-y-z-a.compute-1.amazonaws.com

关于spring - application.properties 和 application.yml 可以混用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31970576/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com