目前最新的Spring-data-mongodb1.8.2 官方文档一直没有说清楚如何连接副本集,本人经过多次尝试终于成功,特分享给大家。
<?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.xsd
http://www.springframework.org/schema/data/mongo
http://www.springframework.org/schema/data/mongo/spring-mongo.xsd
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<mongo:db-factory client-uri="mongodb://${mongo.config.username}:${mongo.config.password}@${mongo.config.replica.set.address}/${mongo.config.database}?replicaSet=${mongo.config.replica.set.name}" />
<bean id="secondaryPreferredReadPreference" class="com.mongodb.TaggableReadPreference.SecondaryPreferredReadPreference"></bean>
<bean id="mongoOperations" class="org.springframework.data.mongodb.core.MongoTemplate">
<constructor-arg name="mongoDbFactory" ref="mongoDbFactory"/>
<property name="readPreference" ref="secondaryPreferredReadPreference" />
</bean>
</beans>
mongo.config.replica.set.address=192.168.1.199:27017,192.168.1.199:27018,192.168.1.199:27019
mongo.config.replica.set.name=rs0
mongo.config.database=dbName
mongo.config.username=userName
mongo.config.password=password