我开始使用一个mongo实例作为我的数据库,在
spring xml中配置:
<mongo:mongo host="localhost" port="27017" />
最近,我将配置更改为使用3节点副本集,配置为:
<mongo:mongo replica-set="${my.replica.set}" />
一切都很好.
我目前的问题是,对于我的开发环境,我想使用单个localhost mongo配置,对于int和prod环境,我想使用副本集配置.我将通过属性文件处理不同的值.问题是关于mongo配置本身.
以下示例中的某些内容将是理想的……
<mongo:mongo uri="localhost:27017" />
<mongo:mongo uri="localhost:27017,localhost:27018" />
我遇到了这个例子:spring-boot uriCanBeCustomized unitTest
有没有办法在spring配置中执行此操作?
我使用的是spring-data-mongodb-1.7.0.RELEASE.
最佳答案 即使您将其指向独立的mongod,看起来副本集配置也能正常工作.我认为这不起作用,因为它专门设置’replica-set’,但测试表明它确实如此.
所以在我的情况下,配置看起来就像
<mongo:mongo replica-set="${mongodbs}" />
我在dev属性文件中的位置
mongodbs=localhost:27017
以及int / prod属性
mongodbs=host1:port1,host2:port2,host3:port3