1. 程式人生 > >springMvc整合mongodb3.4.3 配置檔案

springMvc整合mongodb3.4.3 配置檔案

<?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-4.3.xsd   
          http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd
         http://www.springframework.org/schema/data/mongo http://www.springframework.org/schema/data/mongo/spring-mongo-1.10.xsd"
        default-lazy-init="true">

     <context:property-placeholder location="classpath:mongodb.properties"
                              ignore-unresolvable="true" />
    <!-- 定義mongo物件,對應的是mongodb官方jar包中的Mongo,replica-set設定叢集副本的ip地址和埠 -->
    <!--credentials="${mongo.username}:${mongo.password}@${mongo.dbname}"  -->
    <mongo:mongo-client id="mongoClient" host="${mongo.host}" port="${mongo.port}" credentials="${mongo.username}:${mongo.password}@${mongo.dbname}" replica-set="${mongo.replica}">
        <!-- 一些連線屬性的設定 SAFE -->
        <mongo:client-options
         write-concern="${mongo.safe}"
         connections-per-host="${mongo.connectionsPerHost}" 
         threads-allowed-to-block-for-connection-multiplier="${mongo.threadsAllowedToBlockForConnectionMultiplier}"
         connect-timeout="${mongo.connectTimeout}" 
         max-wait-time="${mongo.maxWaitTime}" 
         socket-keep-alive="${mongo.socketKeepAlive}" 
         socket-timeout="${mongo.socketTimeout}"  />
    </mongo:mongo-client>
    <mongo:db-factory id="mongoDbFactory" dbname="${mongo.dbname}" mongo-ref="mongoClient"/>
    
    <bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
        <!-- <constructor-arg ref="mongoClient" /> -->
        <!-- <constructor-arg name="databaseName" value="${mongo.dbname}" /> -->
        <!-- <constructor-arg ref="userCredentials" />  -->
         <constructor-arg name="mongoDbFactory" ref="mongoDbFactory"/>
    </bean>
    <!-- <bean id="userCredentials" class="org.springframework.data.authentication.UserCredentials">
        <constructor-arg name="username" value="${mongo.username}" />
        <constructor-arg name="password" value="${mongo.password}" />
    </bean> -->

</beans>

在Spring檔案中,

<import resource="spring-mongo.xml"/><!--匯入mongodb配置檔案-->

mongodb.properties

#------------ mongodb --------------
#\u5DF2\u5F00\u542Fmongo\u9A8C\u8BC1\u6743\u9650\uFF0C\u9700\u8981\u5728\u6570\u636E\u5E93\u6DFB\u52A0\u8FD9\u4E2A\u89D2\u8272\uFF0C\u5E76\u4E14\u62E5\u6709\u8BFB\u5199\u6743\u9650
mongo.host=資料庫地址
mongo.dbname=資料庫名
mongo.username=使用者名稱
mongo.password=密碼
mongo.connectionsPerHost=20
mongo.threadsAllowedToBlockForConnectionMultiplier=4
mongo.connectTimeout=20000
mongo.maxWaitTime=15000
mongo.autoConnectRetry=true
mongo.socketKeepAlive=true
mongo.socketTimeout=15000
mongo.slaveOk=true
mongo.safe=SAFE
mongo.port=資料庫埠
mongo.replica=叢集資料庫地址:埠