mongodb driver使用代码详解_MongoDB

来源:脚本之家  责任编辑:小易  

“MongoClient加入到Java驱动程序在2.10作为MongoDB的默认连接类其实并没有什么区别不过有时候Mongo 运行得比 MongoClient要快你可以试一下这个代码,放入1m的文档。Mongo大概用20秒左右,MongoClient要用180秒左右。phpfunction mongo_connect($db,$collection){mongo=new Mongo('mongodb:/localhost');return$mongo->$db->$collection;}mongodb='notificator1';mongocollection='tok';collection=mongo_connect($mongodb,$mongocollection);echo$time=microtime(true)."\\n;i=0;while($i<){row=Array('title'=>"test#$i");collection->save($row);i;}echo microtime(true)-$time;替换 mongo_connect:function mongo_connect($db,$collection){m=new MongoClient('mongodb:/localhost:27017');db=$m->selectDB($db);return$collection=new MongoCollection($db,$collection);}www.zgxue.com防采集请勿采集本网。

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

区别:mongo是server端,可以添加数据进去,MongoClient是用来连接server端的。

MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。

MongoClient是extends Mongo的,一般的都是用最新的MongoClient类,因为有些Mongo的方法在MongoClient已经弃用了

0 前言

全是干货的技术殿堂

Mongo应该是旧版本的了,新的mongodb都是用MongoClient了 区别也不是很大,都是获取客户端,获取数据库,获取集合,然后进行操作 这个是Mongo3的官方文档:

文章收录在我的 GitHub 仓库,欢迎Star/fork:

首先要明确的一点是,虽然有连接池类,但是不需要显示调用该类,具体使用方法如下: mongo:ScopedDbConnection scopedConn=mongo:ScopedDbConnection(DBHost);mongo:DBClientBase*conn=

Java-Interview-Tutorial

前者只是JAVA语言的驱动。后者包括一个客户端,可以直接操作数据库。

https://github.com/Wasabi1234/Java-Interview-Tutorial

mongodb-driver是mongo官方推出的java连接mongoDB的驱动包,相当于JDBC驱动。我们现在来使用mongodb-driver完成对Mongodb的操作。

1 环境准备

创建工程,并添加以下依赖:

<dependency> <groupId>org.mongodb</groupId> <artifactId>mongodb-driver</artifactId> <version>3.10.1</version> </dependency>

2 使用mongodb-driver

2.1 查询所有

@Test public void test1() { //创建连接 MongoClient client = new MongoClient("192.168.200.128"); //打开数据库 MongoDatabase commentdb = client.getDatabase("commentdb"); //获取集合 MongoCollection<Document> comment = commentdb.getCollection("comment"); //查询 FindIterable<Document> documents = comment.find(); //查询记录获取文档集合 for (Document document : documents) { System.out.println("_id:" + document.get("_id")); System.out.println("内容:" + document.get("content")); System.out.println("用户ID:" + document.get("userid")); System.out.println("点赞数:" + document.get("thumbup")); } //关闭连接 client.close(); } }

2.2 根据_id查询

每次使用都要用到MongoCollection,进行抽取:

private MongoClient client; private MongoCollection<Document> comment; @Before public void init() { //创建连接 client = new MongoClient("192.168.200.128"); //打开数据库 MongoDatabase commentdb = client.getDatabase("commentdb"); //获取集合 comment = commentdb.getCollection("comment"); }@After public void after() { client.close(); }@Test public void test2() { //查询 FindIterable<Document> documents = comment.find(new BasicDBObject("_id", "1")); //查询记录获取文档集合 for (Document document : documents) { System.out.println("_id:" + document.get("_id")); System.out.println("内容:" + document.get("content")); System.out.println("用户ID:" + document.get("userid")); System.out.println("点赞数:" + document.get("thumbup")); } }

2.3 新增

@Test public void test3() { Map<String, Object> map = new HashMap(); map.put("_id", "6"); map.put("content", "很棒!"); map.put("userid", "9999"); map.put("thumbup", 123); Document document = new Document(map); comment.insertOne(document); }

2.4 修改

@Test public void test4() { //修改的条件 Bson filter = new BasicDBObject("_id", "6"); //修改的数据 Bson update = new BasicDBObject("$set", new Document("userid", "8888")); comment.updateOne(filter, update); }

2.5 删除

@Test public void test5() { //删除的条件 Bson filter = new BasicDBObject("_id", "6"); comment.deleteOne(filter); }

MongoDB优势与劣势

优势:

1、在适量级的内存的MongoDB的性能是非常迅速的,它将热数据存储在物理内存中,使得热数据的读写变得十分快。

2、MongoDB的高可用和集群架构拥有十分高的扩展性。

3、在副本集中,当主库遇到问题,无法继续提供服务的时候,副本集将选举一个新的主库继续提供服务。

4、MongoDB的Bson和JSon格式的数据十分适合文档格式的存储与查询。

劣势:

1、 不支持事务操作。MongoDB本身没有自带事务机制,若需要在MongoDB中实现事务机制,需通过一个额外的表,从逻辑上自行实现事务。

2、 应用经验少,由于NoSQL兴起时间短,应用经验相比关系型数据库较少。

3、MongoDB占用空间过大。

总结

到此这篇关于mongodb driver使用代码详解的文章就介绍到这了,更多相关mongodb driver使用 内容请搜索真格学网以前的文章或继续浏览下面的相关文章希望大家以后多多支持真格学网!

路径:C:\\Program Files\\JavaD:\\Program Files\\JavaD:\\Java安装后可出现jre和jdk两个目录,其中jre为运行环境,jdk为开发环境。配置JDK环境变量右键我的电脑,选择属性,选择高级选项卡,点击环境变量进入环境变量设置页,进行JVM环境变量的设置。建立系统变量:JAVA_HOME=D:\\Program Files\\Java\\jdk1.6.0_07;建立系统变量:CLASSPATH=.;(逗号+分号);编辑path系统变量:在最前面加上%JAVA_HOME%\\bin;(分号)内容来自www.zgxue.com请勿采集。


  • 本文相关:
  • ubuntu 14.04 安装 mongodb 及 php mongodb driver详细介绍
  • win10 64位安装mongodb数据库的详细教程
  • mongodb索引使用详解
  • mongodb副本集丢失数据的测试实例教程
  • mongodb 数据库操作详解--创建,切换,删除
  • centos 7下mongodb开机无法自启动的解决方法
  • mongodb入门教程(包含安装、常用命令、相关概念、使用技巧、常见
  • c#操作mongodb插入数据效率
  • php中mongodb数据库的连接、添加、修改、查询、删除等操作实例
  • php mongodb gridfs 存储文件的方法详解
  • mongodb 数据库的命名、设计规范详解
  • Mongodb的java driver中的Mongo和MongoClient有什么区别
  • Mongodb的java driver中的Mongo和MongoClient有什么区别
  • Mongodb的java driver中的Mongo和MongoClient有什么区别
  • Mongodb的java driver中的Mongo和MongoClient有什么区别
  • Mongodb的java driver中的Mongo和MongoClient有什么区别
  • Mongodb的java driver中的Mongo和MongoClient有什么区别
  • Mongodb的java driver中的Mongo和MongoClient有什么区别
  • mongoDB 2.2.0 c++ driver 如何实现连接池呢
  • Mongodb的java driver中的Mongo和MongoClient有什么区别
  • 面对MongoDB 3.x 用什么C++ driver
  • 网站首页网页制作脚本下载服务器操作系统网站运营平面设计媒体动画电脑基础硬件教程网络安全mssqlmysqlmariadboracledb2mssql2008mssql2005sqlitepostgresqlmongodbredisaccess数据库文摘数据库其它首页mongodbubuntu 14.04 安装 mongodb 及 php mongodb driver详细介绍win10 64位安装mongodb数据库的详细教程mongodb索引使用详解mongodb副本集丢失数据的测试实例教程mongodb 数据库操作详解--创建,切换,删除centos 7下mongodb开机无法自启动的解决方法mongodb入门教程(包含安装、常用命令、相关概念、使用技巧、常见c#操作mongodb插入数据效率php中mongodb数据库的连接、添加、修改、查询、删除等操作实例php mongodb gridfs 存储文件的方法详解mongodb 数据库的命名、设计规范详解mongodb常用操作命令大全mongodb各种查询操作详解mongodb数据库插入、更新和删除操mongodb 数据库操作--备份 还原 mongodb插入数据的3种方法mongodb中使用distinct去重的简单mongodb整库备份与还原以及单个cmongodb查询操作限制返回字段的方mongodb 实现远程连接php中mongodb数据库的连接、添加mongodb.net 2.2.4驱动版本对mongodb3.3数关于mongodb参数说明与常见错误处理的总结mongodb学习以及集群搭建的实践全纪录记一次mongodb性能问题(从mysql迁移到monmongodb中如何使用join操作详解mongodb常用操作汇总mongodb快速入门笔记(六)之mongodb删除文mongodb特点与体系结构等简介mongodb分片集群部署详解深究从mongodb的objectid中获取时间信息
    免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved