我有一个部署在Heroku并连接到MongoDB的Springboot项目。MongoDB URI在Heroku中设置为环境变量,我在application.properties
文件中访问它,如下所示:
spring.data.mongodb.uri=${MONGO_DB_URI}
当在Heroku中部署应用程序时,这很好,但有时我想在本地运行应用程序,如果我这样做,应用程序崩溃,因为变量MONGO_DB_URI
不存在,因此连接到数据库失败。
是否可以添加检查MONGO_DB_URI
是否为空的逻辑,如果是这样,则使用硬编码的字符串值代替?
如果不是,正确的方法是什么?
提前感谢,我是新的,所以任何建议将是很大的帮助!
@Dilermando Lima评论了一个很好的解决方案,如果你关心你的属性有默认值分配。
如果它可以工作,那就太好了,但是作为一种选择,如果您出于任何原因不想要默认值(比如您不想将敏感值存储在源代码控制中),您可以将JVM引导属性添加到您的运行中,如下所示:
-D<PROPERTIES_TO_BE_ADDED>=<VALUE>
在你的例子中,你可以这样做:
-Dspring.data.mongodb.uri=localhost.com