原文链接

http://docs.mongodb.org/ecosystem/tutorial/getting-started-with-java-driver/

 介绍

本文的目的是让你对怎样使用Mongodb的java-driver驱动有一个简单的了解,当你阅读完本文你就能够參考其它文章以了解很多其它信息。

下载java-driver驱动

你能够在这里下载须要的驱动。

加入java-driver驱动

将下载的mongo-java-driver-2.12.3.jar 复制到你的lib文件夹下。

获取数据库对象

MongoClient mongoClient = new MongoClient( "localhost" , 5000 ); // 5000 为实例port号,默认启动port号为27017

DB db = mongoClient.getDB("mydb"); // 必需要先创建数据库

获取集合名称

Set<String> colls = db.getCollectionNames();



            for (String s : colls) {

                System.out.println(s);

            }

获取集合对象

DBCollection coll = db.getCollection("blog");

获取集合文档数

System.out.println(coll.getCount());

插入一个文档

BasicDBObject doc = new BasicDBObject("name", "MongoDB")

            .append("type", "database")

            .append("count", 1)

            .append("info", new BasicDBObject("x", 203).append("y", 102));

            coll.insert(doc);

插入多个文档

for (int i=0; i < 100; i++) {

                coll.insert(new BasicDBObject("i", i));

            }

使用游标查询满足条件的文档

BasicDBObject query = new BasicDBObject("i", 71);



            DBCursor    cursor = coll.find(query);



            try {

               while(cursor.hasNext()) {

                   System.out.println(cursor.next());

               }

            } finally {

               cursor.close();

            }

            



            

            BulkWriteOperation builder = coll.initializeOrderedBulkOperation();

            builder.insert(new BasicDBObject("_id", 1));

            builder.insert(new BasicDBObject("_id", 2));

            builder.insert(new BasicDBObject("_id", 3));

更新已存在的文档

builder.find(new BasicDBObject("_id", 1)).updateOne(new BasicDBObject("$set", new BasicDBObject("x", 2)));

删除已存在的文档

builder.find(new BasicDBObject("_id", 2)).removeOne();

            builder.find(new BasicDBObject("_id", 3)).replaceOne(new BasicDBObject("_id", 3).append("x", 4));



            BulkWriteResult result = builder.execute();

MongoDB--Getting Started with Java Driver的更多相关文章

  1. MongoDB Java Driver操作指南

    MongoDB为Java提供了非常丰富的API操作,相比关系型数据库,这种NoSQL本身的数据也有点面向对象的意思,所以对于Java来说,Mongo的数据结构更加友好. MongoDB在今年做了一次重 ...

  2. Mongodb Java Driver 参数配置解析

    要正确使用Mongodb Java Driver,MongoClientOptions参数配置对数据库访问的并发性能影响极大. connectionsPerHost:与目标数据库能够建立的最大conn ...

  3. Mongodb入门并使用java操作Mongodb

    转载请注意出处:http://blog.csdn.net/zcm101 最近在学习NoSql,先从Mongodb入手,把最近学习的总结下. Mongodb下载安装 Mongodb的下载安装就不详细说了 ...

  4. MongoDB Java Driver

    本文使用 Java 来描述对 Mongodb 的相关操作,数据库版本是 3.2.8,驱动版本为 3.2.2. 本文将讨论 如何连接MongoDB 文档的 CURD 操作 文档的上传和下载 1. 连接到 ...

  5. MongoDB Java Driver 3.4操作

    导入jar包 <dependency> <groupId>org.mongodb</groupId> <artifactId>mongo-java-dr ...

  6. MongoDb C/java driver

    1,在linux下安装客户端连接windows下 的MongoDBServer.

  7. Reactive-MongoDB 异步 Java Driver 解读

    一.关于 异步驱动 从3.0 版本开始,MongoDB 开始提供异步方式的驱动(Java Async Driver),这为应用提供了一种更高性能的选择.但实质上,使用同步驱动(Java Sync Dr ...

  8. MONGODB(三)——Java操作Mongo

    相比于java调用MySqlApI来操作数据库,调用Mongo要简洁容易的多.通过一个简单的样例,很容易地就可以上手 一.导入Jar包 添加Monog支持Java的jar包,这里使用的是2.9.3 & ...

  9. mongoDB 插入数据 用java实现

    import java.net.UnknownHostException; import com.mongodb.BasicDBObject; import com.mongodb.DB; impor ...

  10. mongodb数据库连接池(java版)

    mongodb数据库接口的设计 package storm.db; import java.util.ArrayList; import com.mongodb.DB; import com.mong ...

随机推荐

  1. HDU4549 M斐波那契数

    M斐波那契数列 题目分析: M斐波那契数列F[n]是一种整数数列,它的定义例如以下: F[0] = a F[1] = b F[n] = F[n-1] * F[n-2] ( n > 1 ) 如今给 ...

  2. 报错消息写在AT SELECTION-SCREEN OUTPUT和START-OF-SELECTION事件下的区别

    今天面试没答上来的问题,其实我是知道的,以前也遇到过.... START-OF-SELECTION下的话会在左下角报错 AT SELECTION-SCREEN OUTPUT消息会弹出框,然后点击就没有 ...

  3. javascript中apply和eval结合的强大用法

        eval是一个函数,可以接受一个参数,这个参数可以作为js语句被解释性的执行,利用这个特性,eval和apply结合起来,可以大大简化代码  如下例子 <a class="cl ...

  4. Linux下套接字具体解释(三)----几种套接字I/O模型

    參考: 网络编程–IO模型演示样例 几种server端IO模型的简介及实现 背景知识 堵塞和非堵塞 对于一个套接字的 I/O通信,它会涉及到两个系统对象.一个是调用这个IO的进程或者线程,还有一个就是 ...

  5. ExtJs4 笔记(13) Ext.menu.Menu 菜单、Ext.draw.Component 绘图、Ext.resizer.Resizer 大小变更

    本篇讲解菜单.绘图.还有大小变更控件.菜单控件可以附加到各种其他控件中,比如按钮.工具栏等,甚至可以直接通过通过右键打开(模拟右键菜单):ext对绘图的支持可以让我们通过js来绘图:大小变更控件可以让 ...

  6. NET Core RC2 and .NET Core SDK Preview

    NET Core RC2 and .NET Core SDK Preview 先看一下 .NET Core(包含 ASP.NET Core)的路线图: Beta6: 2015年7月27日 Beta7: ...

  7. Mysql RR隔离更新列没有索引 会锁全表

    <pre name="code" class="html">mysql> show variables like '%tx_isolation ...

  8. [置顶] Asp.Net---css样式的使用方式

    Css样式的使用大致分为三种 咱们先来看看一张总括图 1 使用连接的形式调用 有两种发方式调用: A   使用link标签 将样式规则写在.Css的样式文档中,再以<link>标签引入 如 ...

  9. 再说Java EE

    说到JavaEE(曾经叫J2EE)是什么,你可能回答:JavaEE是一组规范,这么说是没错,可是自己不认为这个答案非常大.非常空么?什么又是规范?规范能组成应用么?能在JVM中跑起来么?要理解这些,先 ...

  10. Swift - 移除页面视图上的所有元素

    下面代码可以遍历移除页面视图上的所有元件 1 2 3 4 5 6 //清空所有子视图 func clearViews() {     for v in self.view.subviews as [U ...