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. Mysql 日期时间类型详解

    MySQL 中有多种数据类型可以用于日期和时间的表示,不同的版本可能有所差异,表3-2 中列出了MySQL 5.0 中所支持的日期和时间类型. 这些数据类型的主要区别如下: * 如果要用来表示年月日 ...

  2. 最简单的TCP网络封包解包(补充)-序列化

    如若描述或者代码当中有谬误之处,还望指正. 将数据能够在TCP中进行传输的两种方法1.直接拷贝struct就可以了:2.序列化. 拷贝Struct存在的问题1.不能应付可变长类型的数据,比如STL中的 ...

  3. 随机用户id号,随机密码用户名

    类似新浪微博的用户Id怎么生成呢? 特点:10位随机数,而且是以1开头的 好处:不容易猜出有多少用户 方法一: 目的是生成唯一id.可以用uniqid.uniqid获取一个字符串,循环这个字符串,把每 ...

  4. [svc]centos6系统安装(分区)及其18处调优调优最佳实战

    系统下载 在阿里云下载 可以使用最小化的,也可以使用dvd版(CentOS-6.7-x86_64-bin-DVD1.iso),其中dvd版方便安装过程中选包. 一. 系统安装 1,时区选择 2,磁盘分 ...

  5. js基本知识3

    1. 函数 function 函数的声明 函数的 调用 函数的传参 2. 函数返回值 Return 返回结果 返回给函数 Id 函数 function $id(id) { return documen ...

  6. MySQL编码问题集合

    1.以root用户的身份登录,查看编码设置 mysql> SHOW VARIABLES LIKE 'character%'; +--------------------------+------ ...

  7. 前端实现table表格导出excel

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. Spring MVC添加支持Http的delete、put请求!(HiddenHttpMethodFilter)

    浏览器form表单只支持GET与POST请求,而DELETE.PUT等method并不支持,spring3.0添加了一个过滤器,可以将这些请求转换为标准的http方法,使得支持GET.POST.PUT ...

  9. Unix系统编程()发送信号kill

    与shell的kill命令类似,一个进程能够使用kill系统调用向另一进程发送信号. 之所以选择kill作为术语,因为早期UNIX实现中大多数信号的默认行为是终止进程. #include <si ...

  10. ReentrantReadWriteLock读写锁的使用<转>

    Lock比传统线程模型中的synchronized方式更加面向对象,与生活中的锁类似,锁本身也应该是一个对象.两个线程执行的代码片段要实现同步互斥的效果,它们必须用同一个Lock对象. 读写锁:分为读 ...