标签:
1:首先需要下载mongodb的java驱动包 
 https://github.com/mongodb/mongo-java-driver/downloads
2:需要下载spring集成mongodb的包
 下载途径: 
                   a:去csdn下 
                   b:去http://projects.spring.io/spring-data-mongodb/ 使用Maven方式下载
                   c:网上其他地方找
要下载的包如下
spring-data-commons-core-1.2.0.M2.jar
spring-data-mongodb-1.0.0.M4.jar
spring-data-mongodb-cross-store-1.0.0.M4.jar
spring-data-mongodb-log4j-1.0.0.M4.jar

为什么选择很老的1.0.0版本,是因为我的spring框架是3.0.5的,不知道是不是spring版本低了的原因,选择高点的如1.4.0反正会报错
3:ok  包包都⑦了,开始编码了,先说说配置文件
web.xml
- <?xml version="1.0" encoding="UTF-8"?>  
- <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"  
-     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
-     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   
-     http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">  
-     
-     <context-param>  
-         <param-name>contextConfigLocation</param-name>  
-         <param-value>classpath:spring/*.xml</param-value>  
-     </context-param>  
-     <listener>  
-         <listener-class>  
-             org.springframework.web.context.ContextLoaderListener  
-         </listener-class>  
-     </listener>  
-   
- </web-app>  
 
application-global.xml
  
- <?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:aop="http://www.springframework.org/schema/aop"  
-     xmlns:context="http://www.springframework.org/schema/context"  
-     xmlns:mvc="http://www.springframework.org/schema/mvc"  
-     xmlns:mongo="http://www.springframework.org/schema/data/mongo"  
-     xsi:schemaLocation="http://www.springframework.org/schema/beans   
-             http://www.springframework.org/schema/beans/spring-beans-3.0.xsd  
-             http://www.springframework.org/schema/aop   
-             http://www.springframework.org/schema/aop/spring-aop-2.5.xsd  
-             http://www.springframework.org/schema/context  
-             http://www.springframework.org/schema/context/spring-context-3.0.xsd  
-             http://www.springframework.org/schema/mvc   
-             http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd  
-             http://www.springframework.org/schema/data/mongo  
-             http://www.springframework.org/schema/data/mongo/spring-mongo.xsd">  
-   
-   
-     
-     <bean id="placeholderConfig"  
-         class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">  
-         <property name="location">  
-             <value>classpath:db.properties</value>  
-         </property>  
-     </bean>  
-   
-     
-     <!-- 连接池配置详细查看http://api.mongodb.org/java/2.7.2/com/mongodb/MongoOptions.html#connectionsPerHost   
-         或者http://www.cnblogs.com/huangfox/archive/2012/04/01/2428947.html  
-     -->  
-     <mongo:mongo host="${datasource.host}" port="${datasource.port}">  
-         <mongo:options connections-per-host="10"  
-             threads-allowed-to-block-for-connection-multiplier="10"  
-             auto-connect-retry="true" />  
-     </mongo:mongo>  
-   
-   
-     
-     <bean id="mongoTemplate"  
-         class="org.springframework.data.mongodb.core.MongoTemplate">  
-         <constructor-arg ref="mongo" />  
-         <constructor-arg name="databaseName" value="${datasource.dbname}" />  
-     </bean>  
-       
 
</beans>
- <strong><span style="color:#ff0000;">db.properties</span></strong>  
 
#datasource.host=localhost
datasource.host=12.35.174.48
#datasource.port=27017
datasource.port=9933
datasource.dbname=logDB
datasource.username=test
datasource.passwd=test
4:spring的db操作模板MongoTemplate
      具体使用参考百度或者官网http://docs.spring.io/spring-data/data-mongodb/docs/current/api/org/springframework/data/mongodb/core/MongoTemplate.html#getDb()
  
程序启动时,注入MongoTemplate模板
- package dao.impl;  
-   
- import org.springframework.beans.BeansException;  
- import org.springframework.context.ApplicationContext;  
- import org.springframework.context.ApplicationContextAware;  
- import org.springframework.data.mongodb.core.MongoTemplate;  
-   
- import com.mongodb.DB;  
-   
- public class AbstractBaseMongoTemplete  implements ApplicationContextAware {  
-     protected MongoTemplate mongoTemplate;    
-       
-     protected DB db;  
-       
-     
-     public void setMongoTemplate(MongoTemplate mongoTemplate) {    
-         this.mongoTemplate = mongoTemplate;    
-     }    
-         
-     public void setApplicationContext(ApplicationContext applicationContext)    
-             throws BeansException {    
-         
-         MongoTemplate mongoTemplate = applicationContext.getBean("mongoTemplate", MongoTemplate.class);    
-         setMongoTemplate(mongoTemplate);    
-         db=mongoTemplate.getDb();  
-     }    
- }  
 
5:具体操作类接口
- public interface  IDbDao {  
-   
-     
-     public abstract DBObject insert(DBObject obj);  
-       
-     
-     public abstract WriteResult insert(String jsonStr);  
-     
-     public abstract void insertBatch(List<DBObject> list);  
-     
-     public abstract void insertFile(String fileName);  
-   
-     
-     public abstract void delete(DBObject obj);  
-       
-     
-     public abstract void deleteBatch(List<DBObject> list);  
-   
-       
-     
-     public abstract void update(DBObject searchFields,DBObject updateFields);  
-   
-     
-     public abstract List<BasicDBObject> find();  
-       
-     
-     public abstract List<BasicDBObject> find(DBObject query);  
-        
-     
-     public abstract List<BasicDBObject> find(DBObject query,DBObject sort);  
-       
-     
-     public abstract List<BasicDBObject> find(DBObject query,int start,int limit);  
-       
-     
-     public abstract List<BasicDBObject> find(DBObject query,DBObject sort,int start,int limit);  
-       
-     
-     public abstract List<Object> find(Class _class);  
-       
-     
-     public abstract List<Object> find(DBObject query,Class _class);  
-        
-     
-     public abstract List<Object> find(DBObject query,DBObject sort,Class _class);  
-       
-     
-     public abstract List<Object> find(DBObject query,int start,int limit,Class _class);  
-       
-     
-     public abstract List<Object> find(DBObject query,DBObject sort,int start,int limit,Class _class);  
-     
-     public abstract int findCount(DBObject query);  
-        
-     
-     public abstract int findCount(DBObject query,DBObject sort);  
-     
-     public abstract long getCount(DBObject obj);  
-       
-     
-     public abstract long getCount();  
-       
-   
-     
-     public abstract DBObject group(DBObject key,DBObject cond,DBObject initial,String reduce,String fn );  
-       
-       
-     
-     public abstract AggregationOutput  aggregation(DBObject firstDb,DBObject ...optionDb);  
-       
-     public abstract DBCollection getCollection();  
-       
-     
 
mongodb集成spring
标签:
原文地址:http://www.cnblogs.com/weipeng/p/4256045.html