spring mongoDB

<?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:jee="http://www.springframework.org/schema/jee"
	xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context"
	xmlns:aop="http://www.springframework.org/schema/aop" xmlns:mongo="http://www.springframework.org/schema/data/mongo"
	xmlns:util="http://www.springframework.org/schema/util"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd 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.5.xsd
	http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd"
	default-lazy-init="true">

	<!--&lt;!&ndash; 實例化mongo,可指定主機,端口,複製集 &ndash;&gt; -->
	<!--<mongo:mongo id="mongo" host="${mongodb.ip}" port="${mongodb.port}"> -->
	<!--&lt;!&ndash; mongo配置選項,包括是否自動得連, 連接池最大數量,連接超時時間,獲取連接最大等待時間,是否使用slave讀等等 
		&ndash;&gt; -->
	<!--<mongo:options auto-connect-retry="true" -->
	<!--connections-per-host="30" connect-timeout="1000" max-wait-time="5000" -->
	<!--slave-ok="true" socket-keep-alive="true" write-fsync="false" -->
	<!--write-number="0" write-timeout="0" /> -->
	<!--</mongo:mongo>&lt;!&ndash; socket-timeout="1500" &ndash;&gt; -->

	<!-- 生成mongod寫策略 -->

	<util:constant id="safeWriteConcern" static-field="com.mongodb.WriteConcern.SAFE" />


	<!-- 生成mongod寫操作結果檢查策略 -->
	<util:constant id="writeResultChecking"
		static-field="org.springframework.data.mongodb.core.WriteResultChecking.EXCEPTION" />

	<!-- Spring MongoTemplate -->
	<bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
		<constructor-arg ref="mongo" /><!-- 構造參數,引用mongo實例 -->
		<constructor-arg name="databaseName" value="${mongodb.database}" /><!-- 構造參數,指定數據庫名稱 -->
		<constructor-arg name="userCredentials" ref="userCredentials" />
		<property name="writeConcern" ref="safeWriteConcern" /><!-- 設置寫策略 -->
		<property name="writeResultChecking" ref="writeResultChecking" /><!-- 寫操作結果檢查策略 -->
	</bean>


	<!-- 異常轉換處理器 -->
	<bean class="org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor" />


	<bean id="userCredentials" class="org.springframework.data.authentication.UserCredentials">
		<constructor-arg name="username" value="${mongodb.username}" />
		<constructor-arg name="password" value="${mongodb.password}" />
	</bean>
  
    <!---->
	<mongo:mongo id="mongo" replica-set="${mongodb.replica-set}">
		<mongo:options
			threads-allowed-to-block-for-connection-multiplier="${mongodb.threads-allowed-to-block-for-connection-multiplier}"
			connect-timeout="${mongodb.connect-timeout}" max-wait-time="${mongodb.max-wait-time}"
			auto-connect-retry="${mongodb.auto-connect-retry}" socket-keep-alive="${mongodb.socket-keep-alive}"
			socket-timeout="${mongodb.socket-timeout}" slave-ok="${mongodb.slave-ok}"
			write-number="${mongodb.write-number}" write-timeout="${mongodb.write-timeout}"
			write-fsync="${mongodb.write-fsync}" />
	</mongo:mongo>

</beans>

依賴

			<!-- Mongodb begin -->
			<dependency>
				<groupId>org.springframework.data</groupId>
				<artifactId>spring-data-mongodb</artifactId>
				<version>1.5.2.RELEASE</version>
				<exclusions>
					<exclusion>
						<groupId>org.mongodb</groupId>
						<artifactId>mongo-java-driver</artifactId>
					</exclusion>
				</exclusions>
			</dependency>

			<dependency>
				<groupId>org.mongodb</groupId>
				<artifactId>mongo-java-driver</artifactId>
				<version>2.13.3</version>
			</dependency>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章