package com.moonlit.example;

import com.mongodb.BasicDBObject;
import com.mongodb.BulkWriteOperation;
import com.mongodb.BulkWriteResult;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.DBObject;
import com.mongodb.MongoClient; public class MongodbTest {
public static void main(String[] args) {
MongoClient mongoClient = new MongoClient();
DB db = mongoClient.getDB("mydb");
DBCollection coll = db.getCollection("testCollection"); // insert a document
BasicDBObject doc = new BasicDBObject("name", "MongoDB")
.append("type", "database")
.append("count", 1)
.append("info", new BasicDBObject("x", 123).append("y", 456));
coll.insert(doc); // find the first document in a collection
DBObject myDoc = coll.findOne();
System.out.println(myDoc); // adding multiple documents
for (int i = 1; i <= 100; i ++) {
coll.insert(new BasicDBObject("i", i));
} // counting documents in a collection
System.out.println(coll.getCount()); // using a cursor to get all collection
DBCursor cursor = coll.find();
try {
while (cursor.hasNext())
System.out.println(cursor.next());
} finally {
cursor.close();
} // get a single document with a guery
BasicDBObject query = new BasicDBObject("i", 23);
cursor = coll.find(query);
try {
while (cursor.hasNext())
System.out.println(cursor.next());
} finally {
cursor.close();
} query = new BasicDBObject("j", new BasicDBObject("$ne", 93))
.append("i", new BasicDBObject("$gt", 90));
cursor = coll.find(query);
try {
while (cursor.hasNext())
System.out.println(cursor.next());
} finally {
cursor.close();
} query = new BasicDBObject("i", new BasicDBObject("$ne", 93).append("$gt", 90)); cursor = coll.find(query);
try {
while (cursor.hasNext())
System.out.println(cursor.next());
} finally {
cursor.close();
} // // delete all
// cursor = coll.find();
// try {
// while (cursor.hasNext())
// coll.remove(cursor.next());
// } finally {
// cursor.close();
// }
//
// // count
// System.out.println(coll.getCount()); // 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", 123)));
// builder.find(new BasicDBObject("_id", 2)).remove();
// builder.find(new BasicDBObject("_id", 3)).replaceOne(new BasicDBObject("_id", 3).append("x", 4)); // BulkWriteResult result = builder.execute(); }
}

Java连接MongoDB样例的更多相关文章

  1. 14.ZooKeeper Java API 使用样例

    转自:http://www.aboutyun.com/thread-7332-1-1.html package com.taobao.taokeeper.research.sample; import ...

  2. Java 连接MongoDB

    1.驱动 通过java连接MongoDB需要一个java版的驱动 下载地址:http://mongodb.github.io/mongo-java-driver/ 2.连接MongoDB 通过 com ...

  3. Java线程演示样例 - 继承Thread类和实现Runnable接口

    进程(Process)和线程(Thread)是程序执行的两个基本单元. Java并发编程很多其它的是和线程相关. 进程 进程是一个独立的执行单元,可将其视为一个程序或应用.然而,一个程序内部同事还包括 ...

  4. MongoDB第三天(正则,管道,聚合,字符串,算术,日期,java连接MongoDB)

    部分正则表达式: i:忽略大小写 m:多行查找 x:设置 x 选项后,正则表达式中的非转义的空白字符将被忽略.   s:允许点字符(即.)匹配包括换行符在内的所有字符. w:匹配包括下划线的任何单词字 ...

  5. java连接mongodb数据库

    最近毕设需要用到这个数据库.然而又不会,没办法,只能上网学习学习. 记录一下java连接mongodb数据库的简单方法.这里只是记录一下学习.熟悉一下CURD方法. 但是毕业用到的是SpringBoo ...

  6. java连接MongoDB查询导出为excel表格

    背景 因为项目需求.每一个星期须要统计每一个公众号7天的訪问数,月底就须要统计一个月的訪问数,40多个公众号.每次手动统计都须要花费1个小时,总之是一项无技术耗时耗神的手工活. 于是.想写个程序来统计 ...

  7. java servlet 代码样例 (demo)

    今天又搞了下jsp +servlet 的代码样例,感觉虽然搭了好多次,可是每次还是不记得那些参数,都要去网上搜索,索性自己把这次的简单demo给记录下来,供下次使用的时候直接复制吧. 这个web逻辑 ...

  8. java连接mongodb的一个奇葩问题及奇葩解决方式

    昨天在eclipse中编写代码,本来连接mongodb进行各项操作都是正常的,但是有一会儿突然之间就没法连接了,还一直抱错,错误如下: 信息: Cluster created with setting ...

  9. java设计模式演示样例

    创建模式 1.工厂方法模式(Factory Method)  将程序中创建对象的操作,单独出来处理,创建一个产品的工厂接口,把实际的工作转移到详细的子类.大大提高了系统扩展的柔性,接口的抽象化处理给相 ...

随机推荐

  1. 帧率(FPS)计算的六种方法总结

    原文地址:http://blog.csdn.net/u012494876/article/details/53368164 帧率(FPS)计算是游戏编程中常见的一个话题.大体来说,总共有如下六种方法: ...

  2. VMware Workstation unrecoverable error: (vmx)虚拟机挂起后无法启动问题

    为了方便,虚拟机都是采用挂起状态,今天在启动虚拟机的时候出现如下提示错误: VMware Workstation unrecoverable error: (vmx)Exception 0xc0000 ...

  3. mybatis 特殊符号转义和模糊查询和批量插入

    1 xml文件特殊符号转义 <          < >          > <>   <> &      & &apos; ...

  4. 常用的SQL

    --时间计算: select GETDATE() ,GETDATE()) ,GETDATE()) ,GETDATE()) ,GETDATE()) ,GETDATE()) ,GETDATE()) --查 ...

  5. unity, StartCoroutine and StopCoroutine

    startCoroutine("func",1.0f)可以用stopCoroutine("func")来停. startCoroutine(func(1.0f) ...

  6. 简洁经常使用权限系统的设计与实现(一):构造权限菜单树的N(N&gt;=4)种方法

    权限系统.Web开发常见标准子系统之中的一个.结合自己的一些思考和实践,从本篇開始权限系统的设计与实现之路. 近期,重构了项目的权限菜单构造过程,向前端返回json格式的权限树. 这一篇.仅仅是大致介 ...

  7. QT实现右键快捷菜单

    [转自]:http://blog.csdn.net/rolland1989/article/details/5754575 QWidget及其子类都可有右键菜单,因为QWidget有以下两个与右键菜单 ...

  8. atitit.Oracle 9 10 11 12新特性attilax总结

    atitit.Oracle 9  10 11  12新特性 1. ORACLE 11G新特性 1 1.1. oracle11G新特性 1 1.2. 审计 1 1.3. 1.   审计简介 1 1.4. ...

  9. C# fixed详解

    相信很多人在这样或那样的项目中,或者无意间看到了fixed语句块,看到之后你肯定会疑问: 1.这个fixed关键字是做什么用的? 2.什么情况下需要该关键字? 3.这个关键字该怎么用? 我相信解决了上 ...

  10. MultipartEntity 乱码

    MultipartEntity multipartEntity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE, null, Ch ...