参考文档

mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]

依赖

        <dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongo-java-driver</artifactId>
<version>3.0.2</version>
</dependency>

beans-mongodb.xml

    <beans>
<bean class="cn.zno.mongodb.CustomMongoClient" init-method="init" destroy-method="destroy" scope="singleton">
<property name="uri">
<value><![CDATA[mongodb://xiaoming:123456@localhost:27017/?authSource=logtest&authMechanism=MONGODB-CR]]></value>
</property>
<property name="dbName" value="logtest"></property>
<property name="collectionName" value="news"></property>
</bean>
</beans>

CustomMongoClient.java

package cn.zno.mongodb;

import org.bson.Document;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import com.mongodb.MongoClient;
import com.mongodb.MongoClientURI;
import com.mongodb.client.MongoCollection; public class CustomMongoClient { private final Logger logger = LoggerFactory.getLogger(getClass()); private MongoClient mongoClient;
private MongoCollection<Document> mongoCollection; private String uri;
private String dbName;
private String collectionName; public void init() {
MongoClientURI mongoClientURI = new MongoClientURI(uri);
mongoClient = new MongoClient(mongoClientURI);
mongoCollection = mongoClient.getDatabase(dbName).getCollection(collectionName);
logger.info("MongoClient init");
} public void destroy() {
mongoClient.close();
logger.info("MongoClient closed");
} public MongoCollection<Document> getCollection() {
return this.mongoCollection;
} public String getUri() {
return uri;
} public void setUri(String uri) {
this.uri = uri;
} public String getDbName() {
return dbName;
} public void setDbName(String dbName) {
this.dbName = dbName;
} public String getCollectionName() {
return collectionName;
} public void setCollectionName(String collectionName) {
this.collectionName = collectionName;
}
}

如何使用:

    @Autowired
private CustomMongoClient mongoClient; public void dd() {
Document document = new Document();
document.append("title", "天气日报");
document.append("content", "晴");
mongoClient.getCollection().insertOne(document);
}

mongodb spring 集成的更多相关文章

  1. spring集成mongodb jar包版本问题

    在开发过程中,spring集成mongodb的jar包. 如果需要使用排序功能. spring-data-mongodb-1.4.1.RELEASE.jar 的版本为1.4.1,如果使用如下代码: Q ...

  2. spring集成mongodb封装的简单的CRUD

    1.什么是mongodb         MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案. mongoDB MongoDB是一个介 ...

  3. spring boot MongoDB的集成和使用

    前言 上一章节,简单讲解了如何集成Spring-data-jpa.本章节,我们来看看如何集成NoSQL的Mongodb.mongodb是最早热门非关系数据库的之一,使用也比较普遍.最适合来存储一些非结 ...

  4. spring 集成mongo配置

    spring继承Mongo使用的是spring-data. 如果需要加入两个mongo与spring集成的包,spring-data-commons-1.7.0.RELEASE.jar,spring- ...

  5. spring4与mongodb的集成

    新项目的辅助系统,需要用到mongo系统,今天再次将其使用环境进行了操作搭建.还是遇到一些问题,毕竟之前使用的场景和现在的不同.版本也不一样了. 本次使用的环境: mongo:3.4.4版本 OS: ...

  6. spring 集成 redis -- pub/sub

    redis除了常用的当做缓存外,还可以当做简单的消息中间件,实现消息发布订阅 spring集成redis,可以使用spring-data-redis 首先引入相关maven依赖(此处我spring相关 ...

  7. SpringBoot | 第三十一章:MongoDB的集成和使用

    前言 上一章节,简单讲解了如何集成Spring-data-jpa.本章节,我们来看看如何集成NoSQL的Mongodb.mongodb是最早热门非关系数据库的之一,使用也比较普遍.最适合来存储一些非结 ...

  8. Spring集成Redis方案(spring-data-redis)(基于Jedis的单机模式)(待实践)

    说明:请注意Spring Data Redis的版本以及Spring的版本!最新版本的Spring Data Redis已经去除Jedis的依赖包,需要自行引入,这个是个坑点.并且会与一些低版本的Sp ...

  9. 从零开始学 Java - Spring 集成 Memcached 缓存配置(二)

    Memcached 客户端选择 上一篇文章 从零开始学 Java - Spring 集成 Memcached 缓存配置(一)中我们讲到这篇要谈客户端的选择,在 Java 中一般常用的有三个: Memc ...

随机推荐

  1. maven下载源代码,中文注释乱码的处理方法

    通过maven下载的源码,如果有注释是中文的话,一般会有乱码问题,解决办法如下: Window -> Preferences -> Content Types -> Text -&g ...

  2. 面试总结之JAVA

    1. what is thread safe? 线程安全就是说多线程访问同一代码,不会产生不确定的结果.编写线程安全的代码是低依靠线程同步.线程安全: 在多线程中使用时,不用自已做同步处理线程不安全: ...

  3. gmake与make的区别

    gnu make在linux下一般是叫make但是如果是在其他的unix系统下,因为有一个原生的makegnu make就改个名字叫gmake了.就这们简单 当port一个老的unix程序,如老的Su ...

  4. ThinkPHP实现事务回滚示例代码

    ThinkPHP的事务回滚示例如下: ? 1 2 3 4 5 6 7 8 9 10 $m=D('YourModel');//或者是M(); $m2=D('YouModel2'); $m->sta ...

  5. Oracle Block Change Tracking功能(转)

    from:http://space.itpub.net/?uid-25744374-action-viewspace-itemid-732091 通过使用block change tracking功能 ...

  6. django rest_framework 框架的使用02

    rest_framework 访问频率的限制(节流) 对于用户访问频率的显示,rest_framework 也有自己的类进行约束 先来一个自己的基于它的类的节流类的限制 class VisitCont ...

  7. springcloud(五) Hystrix 降级,超时

    分布式系统中一定会遇到的一个问题:服务雪崩效应或者叫级联效应什么是服务雪崩效应呢? 在一个高度服务化的系统中,我们实现的一个业务逻辑通常会依赖多个服务,比如:商品详情展示服务会依赖商品服务, 价格服务 ...

  8. Nginx实战入门教程

    Nginx 简介 Nginx是一个高性能的http和反向代理服务器,它看起来好像不太符合英文单词的拼写习惯,因为Nginx是由名为 伊戈尔·赛索耶夫 的俄罗斯人开发的.Nginx主要特点为占用内存小, ...

  9. docker-ubuntu镜像,nginx镜像

    docker 是将程序与机器隔开,使程序不受环境影响. 安装 sudo apt-get install docker.io ## 好用的一些命令 1.停用全部运行中的容器: docker stop $ ...

  10. ES6系列_4之扩展运算符和rest运算符

    运算符可以很好的为我们解决参数和对象数组未知情况下的编程,让我们的代码更健壮和简洁. 运算符有两种:对象扩展运算符与rest运算符. 1.对象扩展( spread)运算符(...) (1)解决参数个数 ...