Java 使用连接字符串为mongo配置SpringXMLBean
我在项目中使用mongo,并且在applicationContext.xml文件中有如下配置:Java 使用连接字符串为mongo配置SpringXMLBean,java,spring,mongodb,Java,Spring,Mongodb,我在项目中使用mongo,并且在applicationContext.xml文件中有如下配置: <!-- MongoDb configurations --> <mongo:mongo host="${mongo.host}" port="${mongo.port}" /> <mongo:db-factory dbname="${mongo.database}" /> <bean id="mongoTemplate" class="org.spring
<!-- MongoDb configurations -->
<mongo:mongo host="${mongo.host}" port="${mongo.port}" />
<mongo:db-factory dbname="${mongo.database}" />
<bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
<constructor-arg name="mongoDbFactory" ref="mongoDbFactory" />
</bean>
但现在我已经将mongo移动到安全服务器,它具有用户名、密码、主机和副本集选项
我可以用这种语法连接它
String connectionString = String.format("mongodb://%s:%s@%s/%s%s", username, password, host, database, options);
MongoClientURI client_uri = new MongoClientURI(connectionString);
MongoClient client = new MongoClient(client_uri);
DB db = client.getDB(database);
请告知我如何在配置xml文件中配置相同的内容,或者是否有任何配置属性可用于设置连接字符串。如果您希望使用uri,为什么不直接将uri放入xml配置中?如果您只想从代码中的不同参数值构建一个URI,那么我就看不出这一点,因为如果它们已经是不同的参数值,那么从它们生成URI真的没有任何意义。如何在spring xml文件中配置mongo时设置一个直接URI?这在单元测试中:非常感谢Neil:)
String connectionString = String.format("mongodb://%s:%s@%s/%s%s", username, password, host, database, options);
MongoClientURI client_uri = new MongoClientURI(connectionString);
MongoClient client = new MongoClient(client_uri);
DB db = client.getDB(database);