使用spring-boot 1.2.5版
在开发中,我正在尝试默认我的应用程序使用本地托管的mongo数据库
./gradlew bootrun
在aws中,我想使用托管在ec2实例上的mongo数据库
jar -jar my.jar -Dspring.profiles.active=aws
spring.profiles.active=development
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文件中
答案 0 :(得分:3)
我原来的解决方案实际上是正确的。
我最终将application.properties
移至application.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
可以将开发配置文件设为'默认'
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