我目前正在编写一个应使用MongoDB副本集的应用程序。这是一个基于Spring Boot的应用程序,以下属性可以很好地连接到一台服务器:
spring.data.mongodb.host=localhost spring.data.mongodb.port=27017 spring.data.mongodb.database=demo
这对于我的本地开发人员环境绝对合适。但是稍后它应该针对MongoDB副本集运行,因此我必须提供至少2个更好的3个副本集种子,但是如何使用属性来做到这一点?
我在此页面上进行了查看:http : //docs.spring.io/spring-boot/docs/current/reference/html/common-application- properties.html,但是没有提到副本集的显式属性。提供以逗号分隔的地址列表,如下所示:
spring.data.mongodb.host=127.0.0.1,127.0.1.1,127.0.2.1 spring.data.mongodb.uri=mongo://127.0.0.1,mongo://127.0.0.1:27018
(我一次又一次地尝试。)
这也不起作用(实际上,它会产生一个异常,让Spring使用默认配置)。
我也尝试使用以下config.xml,但没有运气:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:mongo="http://www.springframework.org/schema/data/mongo" xsi:schemaLocation= "http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/data/mongo http://www.springframework.org/schema/data/mongo/spring-mongo-1.0.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> <mongo:mongo id="replicaSetMongo" replica-set="127.0.0.1:27017,localhost:27018"/> </beans>
我知道上述配置略有不同,但是我目前正在尝试获取一个异常,该异常向我显示没有副本集节点可访问。
有任何想法,提示吗?
没有明确的支持,没有。但是您应该可以通过uri参数进行配置。
uri
实际上,我们最近已经更新了文档。