1.pom文件添加:

  1. <dependency>
  2. <groupId>org.mongodb</groupId>
  3. <artifactId>mongo-java-driver</artifactId>
  4. <version>2.14.2</version>
  5. </dependency>
  6.  
  7. <dependency>
  8. <groupId>org.springframework.data</groupId>
  9. <artifactId>spring-data-mongodb</artifactId>
  10. <version>1.7.2.RELEASE</version>
  11. </dependency>

2.Spring配置文件的头信息,其中只需关注mongo的三行就行:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <beans xmlns="http://www.springframework.org/schema/beans"
  3. xmlns:mvc="http://www.springframework.org/schema/mvc"
  4. xmlns:context="http://www.springframework.org/schema/context"
  5. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  6. xmlns:aop="http://www.springframework.org/schema/aop"
  7. xmlns:tx="http://www.springframework.org/schema/tx"
  8.  
  9. xmlns:mongo="http://www.springframework.org/schema/data/mongo"
  10. xsi:schemaLocation="
  11. http://www.springframework.org/schema/beans
  12. http://www.springframework.org/schema/beans/spring-beans.xsd
  13. http://www.springframework.org/schema/mvc
  14. http://www.springframework.org/schema/mvc/spring-mvc.xsd
  15. http://www.springframework.org/schema/context
  16. http://www.springframework.org/schema/context/spring-context.xsd
  17.  
  18. http://www.springframework.org/schema/data/mongo
  19. http://www.springframework.org/schema/data/mongo/spring-mongo.xsd
  20. http://www.springframework.org/schema/aop
  21. http://www.springframework.org/schema/aop/spring-aop.xsd
  22. http://www.springframework.org/schema/tx
  23. http://www.springframework.org/schema/tx/spring-tx.xsd
  24. ">
  25.  
  26.      <mongo:mongo-client host="172.16.10.247" port="27017" id="mongo">  
              <mongo:client-options write-concern="SAFE"/>  
          </mongo:mongo-client>  
          
          <mongo:db-factory  id="mongoDbFactory" dbname="db_mongo" mongo-ref="mongo" />  //注释,这句为了说明有账号密码而已,实际项目中没有这句<mongo:db-factory dbname="db_mongo" mongo-ref="mongo" username="qqw_reward" password="Reward_New001"/>  
  27.  
  28.       <bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">  
            <constructor-arg name="mongoDbFactory" ref="mongoDbFactory" />  
          </bean>
    </beans>

3.DAO层代码:

  1. package com.companyname.publicbase.dao;
  2.  
  3. import java.util.List;
  4.  
  5. import org.springframework.data.mongodb.core.query.Query;
  6. import org.springframework.data.mongodb.core.query.Update;
  7.  
  8. public interface BaseMongoDao {
  9.  
  10. public <T> List<T> find(Class<T> clazz);
  11.  
  12. public <T> T findOne(Query query, Class<T> clazz);
  13.  
  14. public <T> void update(Query query, Update update, Class<T> T);
  15.  
  16. //批量更新
  17. public <T> void updatemulti(Query query, Update update, Class<T> clazz);
  18.  
  19. public <T> void save(T entity);
  20.  
  21. public <T> T findById(String id, Class<T> clazz);
  22.  
  23. public <T> long count(Query query, Class<T> clazz);
  24.  
  25. public <T> void remove(Query query, Class<T> clazz);
  26. }

4.DAO实现类的代码:

  1. package com.companyname.publicbase.dao.impl;
  2.  
  3. import java.util.List;
  4.  
  5. import javax.annotation.Resource;
  6.  
  7. import org.springframework.data.mongodb.core.MongoTemplate;
  8. import org.springframework.data.mongodb.core.query.Query;
  9. import org.springframework.stereotype.Repository;
  10. import org.springframework.transaction.annotation.Transactional;
  11.  
  12. @Repository
  13. @Transactional(rollbackFor=Exception.class)
  14. public class BaseMongoDaoImpl<T>{
  15.  
  16. /*@Resource
  17. MongoTemplate mongoTemplate;
  18. public List<T> find(Query query, Class<T> clazz) {
  19. return (List<T>) mongoTemplate.find(query, clazz);
  20. }*/
  21.  
  22. @Resource
  23. private MongoTemplate mongoTemplate;
  24. public List<T> find(Query query, Class<T> clazz) {
  25. System.out.println(mongoTemplate);
  26. return (List<T>) mongoTemplate.find(query, clazz);
  27. }
  28.  
  29. /**
  30. * spring mongodb 集成操作类 
  31. */
  32. /*@Autowired private MongoTemplate mongoTemplate;
  33.  
  34. public List<T> find(Query query, Class<T> clazz) {
  35. return (List<T>) mongoTemplate.find(query, clazz);
  36. } */
  37.  
  38. /*public T findOne(Query query, Class<T> clazz) {
  39. return (T) mongoTemplate.findOne(query, clazz);
  40. }
  41.  
  42. public void update(Query query, Update update, Class<T> clazz) {
  43. mongoTemplate.findAndModify(query, update, clazz);
  44. }
  45.  
  46. //批量更新
  47. public void updatemulti(Query query, Update update, Class<T> clazz) {
  48. mongoTemplate.updateMulti(query, update, clazz);
  49. }
  50.  
  51. public void save(T entity) {
  52. mongoTemplate.insert(entity);
  53. }
  54.  
  55. public T findById(String id, Class<T> clazz) {
  56. return (T) mongoTemplate.findById(id, clazz);
  57. }
  58.  
  59. public long count(Query query, Class<T> clazz){
  60. return mongoTemplate.count(query, clazz);
  61. }
  62.  
  63. public void remove(Query query, Class<T> clazz){
  64. mongoTemplate.remove(query, clazz);
  65. }
  66. */
  67. }

这样Spring4整合mongo3.X就结束了,如果报这个异常:NoClassDefFoundError: org/springframework/objenesis/ObjenesisStd,

就说明你用的不是spring4.x,到此恭喜你已经整合完毕了。

-------------------------------------------------------------------------------------------------------------------------------------------------------------------

下面就是整合mongo2.x的内容了,这个spring3.2起码是没有问题的,来!下面开始整理:

1.pom文件:

  1. <dependency>
  2. <groupId>org.mongodb</groupId>
  3. <artifactId>mongo-java-driver</artifactId>
  4. <version>2.12.4</version>
  5. </dependency>
  6.  
  7. <dependency>
  8. <groupId>org.springframework.data</groupId>
  9. <artifactId>spring-data-mongodb</artifactId>
  10. <version>1.6.1.RELEASE</version>
  11. </dependency>

2.Spring文件:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <beans xmlns="http://www.springframework.org/schema/beans"
  3. xmlns:mvc="http://www.springframework.org/schema/mvc"
  4. xmlns:context="http://www.springframework.org/schema/context"
  5. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  6. xmlns:aop="http://www.springframework.org/schema/aop"
  7. xmlns:tx="http://www.springframework.org/schema/tx"
  8.  
  9. xmlns:mongo="http://www.springframework.org/schema/data/mongo"
  10. xsi:schemaLocation="
  11. http://www.springframework.org/schema/beans
  12. http://www.springframework.org/schema/beans/spring-beans.xsd
  13. http://www.springframework.org/schema/mvc
  14. http://www.springframework.org/schema/mvc/spring-mvc.xsd
  15. http://www.springframework.org/schema/context
  16. http://www.springframework.org/schema/context/spring-context.xsd
  17.  
  18. http://www.springframework.org/schema/data/mongo
  19. http://www.springframework.org/schema/data/mongo/spring-mongo-1.0.xsd
  20.  
  21. http://www.springframework.org/schema/aop
  22. http://www.springframework.org/schema/aop/spring-aop.xsd
  23. http://www.springframework.org/schema/tx
  24. http://www.springframework.org/schema/tx/spring-tx.xsd
  25. ">
  26.  
  27.  <mongo:mongo host="172.16.10.247" port="27017"/>
      <mongo:db-factory dbname="db_mongo" mongo-ref="mongo" username="qqw_reward" password="Reward_New001"/>
  28.  
  29.   <bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate">
        <constructor-arg name="mongoDbFactory" ref="mongoDbFactory" />
      </bean>
    </beans>

3.java调用就跟上面一样了,dao和实现类都是一样的,就这样两套都整理完了,有什么要完善的再回来改,之前测试过是没有问题的,百分百能跑,

也可以看看这个怎么写的http://blog.csdn.net/chenpy/article/details/50458787

Spring4分别整合mongo2.X和3.0的更多相关文章

  1. MyBatis学习总结(八)——Mybatis3.x与Spring4.x整合(转载)

      孤傲苍狼 只为成功找方法,不为失败找借口! MyBatis学习总结(八)--Mybatis3.x与Spring4.x整合 一.搭建开发环境 1.1.使用Maven创建Web项目 执行如下命令: m ...

  2. Spring集成Mybatis,spring4.x整合Mybatis3.x

    Spring集成Mybatis,spring4.x整合Mybatis3.x ============================== 蕃薯耀 2018年3月14日 http://www.cnblo ...

  3. Struts 2.x 与Spring4.x整合出现:No mapping found for dependency [type=java.lang.String, name='actionPackages...

    Struts2.16与Spring4.x整合出错: Caused by: java.lang.RuntimeException: com.opensymphony.xwork2.inject.Depe ...

  4. 最近用spring4.x整合Jackson------>java.lang.ClassNotFoundException:

    最近用spring4.x整合Jackson,结果莫名其妙的一直报错,网上收索的结果都是在maven或者gradle的环境下配置依赖条件解决的:但是eclipseIDE环境下的jar包应该是会自动依赖影 ...

  5. Struts2+Hibernate4+Spring4框架整合搭建Java项目原型

    收藏 http://www.cnblogs.com/mageguoshi/p/5850956.html Struts2+Hibernate4+Spring4框架整合搭建Java项目原型

  6. (转)阿里官方提供的dubbo-spring-boot-starter 1.0.1 整合的dubbo 2.6.0和spring boot 1.5.9 案例

    作者:许浩_5e9f链接:https://www.jianshu.com/p/5381cc8876e3來源:简书著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. springboo ...

  7. Mybatis3.x与Spring4.x整合(转)

    http://www.cnblogs.com/xdp-gacl/p/4271627.html 一.搭建开发环境 1.1.使用Maven创建Web项目 执行如下命令: mvn archetype:cre ...

  8. MyBatis入门学习教程-Mybatis3.x与Spring4.x整合

    一.搭建开发环境 1.1.使用Maven创建Web项目 执行如下命令: mvn archetype:create -DgroupId=me.gacl -DartifactId=spring4-myba ...

  9. MyBatis学习总结(八)——Mybatis3.x与Spring4.x整合

    一.搭建开发环境 1.1.使用Maven创建Web项目 执行如下命令: mvn archetype:create -DgroupId=me.gacl -DartifactId=spring4-myba ...

随机推荐

  1. console调试--转

    目录: 一.什么是 Console 二 .什么浏览器支持 Console 三.为什么不直接使用 alert 或自己写的 log 四.console.log(object[,object,.....]) ...

  2. IOS学习:ios中的数据持久化初级(文件、xml、json、sqlite、CoreData)

    IOS学习:ios中的数据持久化初级(文件.xml.json.sqlite.CoreData) 分类: ios开发学习2013-05-30 10:03 2316人阅读 评论(2) 收藏 举报 iOSX ...

  3. Swift—final关键字-b

    在类的定义中使用final关键字声明类.属性.方法和下标.final声明的类不能被继承,final声明的属性.方法和下标不能被重写. 下面看一个示例: final class Person { //声 ...

  4. 『安全工具』注入神器SQLMAP

    Pic by Baidu 0x 00 前言 正是SQLMAP这种神器的存在,SQL注入简直Easy到根本停不下来.... PS:国内类似软件也有阿D,明小子,挖掘机,当你用过他们之后你才会发现SQLM ...

  5. jQueryMobile之listview

    效果如下: data-inset="true":为圆角 data-filter="true":带着过滤输入框 <!DOCTYPE html> < ...

  6. MySQL原生HA方案 – Fabric体验之旅

    http://www.csdn.net/article/2014-08-20/2821300

  7. PullToRefreshListView 内嵌checkbox 数据丢失问题

    在PullToRefreshListView 内部内嵌了Checkbox如下图所示: 原本设计思路是:对CheckBox 进行 setOnCheckedChangeListener 监听 当Check ...

  8. fiddler Composer 构建请求

    Fiddler的作者把HTTP Request发射器取名叫Composer(中文意思是:乐曲的创造者),以前叫做Request Builder Fiddler Composer的功能就是用来创建HTT ...

  9. BZOJ3314: [Usaco2013 Nov]Crowded Cows

    3314: [Usaco2013 Nov]Crowded Cows Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 86  Solved: 61[Subm ...

  10. 嵌入式linux内核制作

    今天来总结一下mini2440的内核制作过程. 一. 将内核文件拷贝至目标目录,解压. 二.清除中间文件 命令:make distclean 三.配置内核文件 将开发板厂商制作好的内核文件拷贝至内核文 ...