我想从Spring Boot应用程序内部连接到Mlab上托管的在线MongoDB数据库。
我已经使用URI配置了application.properties:
spring.data.mongodb.uri = mongodb://myuser:mypassword@ds129532.mlab.com:29532/consilium-dev
但是,应用程序仍然连接到本地MongoDB数据库。如何将其连接到Mlab数据库?
解: 资源文件夹不在右侧文件夹中。它应该在src / java / resources
中答案 0 :(得分:0)
对于在线mongodb,在application.properties
中使用数据库值对我不起作用。
它适用于本地数据库。但是,一旦我在Google上搜索并找到一个示例,他们就在下面以这种方式添加了示例,并且对我有用。
spring.data.mongodb.uri=mongodb://<USERNAME>:<PASSWORD>@ds261828.mlab.com:61828/springdb.
答案 1 :(得分:0)
在我的情况下,spring boot在我的PC上进行测试时正在连接到application.properties
文件中指定的uri,但一旦部署到heroku,它便始终连接到localhost
,而与{ {1}}。解决方案是在将jar部署到服务器时将数据库uri作为命令行参数传递,因为这将优先于属性。为此,请创建一个Procfile,例如:
application.properties
并使用heroku工具包,运行以下命令。
web: java -Dserver.port=$PORT -Dspring.data.mongodb.uri=mongodb://<user>:<pass>@<host>:<port>/<db> -jar my-app.jar