<?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:mongo="http://www.springframework.org/schema/data/mongo"
	xsi:schemaLocation="http://www.springframework.org/schema/data/mongo
          http://www.springframework.org/schema/data/mongo/spring-mongo-1.0.xsd
          http://www.springframework.org/schema/beans
          http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">

	<mongo:db-factory id="mongoDbFactory" host="${mongo.db.host}"
		port="${mongo.db.port}" dbname="${mongo.db.dbname}" />

	<bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
		<constructor-arg name="mongoDbFactory" ref="mongoDbFactory" />
		<constructor-arg name="mongoConverter" ref="mappingMongoConverter" />
	</bean>

	<bean id="defaultMongoTypeMapper"
		class="org.springframework.data.mongodb.core.convert.DefaultMongoTypeMapper">
		<constructor-arg name="typeKey">
			<null /><!-- 这里设置为空,可以把 spring data mongodb 多余保存的_class字段去掉 -->
		</constructor-arg>
	</bean>

	<bean id="mappingContext"
		class="org.springframework.data.mongodb.core.mapping.MongoMappingContext" />
		
	<!-- 配置mongodb映射类型 -->
	<bean id="mappingMongoConverter"
		class="org.springframework.data.mongodb.core.convert.MappingMongoConverter">
		<constructor-arg name="mongoDbFactory" ref="mongoDbFactory" />
		<constructor-arg name="mappingContext" ref="mappingContext" />
		<property name="typeMapper" ref="defaultMongoTypeMapper" />
	</bean>
</beans>