如何从Spring Boot连接到在线MongoDB数据库?

时间:2017-06-26 13:48:03

标签: java spring mongodb spring-boot

我想从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

2 个答案:

答案 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