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. iOS官方文档阅读 基本格式指北

    一些关键词作用 NS_AVAILABLE 表示可用 如 NS_AVAILABLE(NA, 6_0);例如上面这句就是表示 该方法在6.0系统后可用 如果在6.0以下的系统用不了的 或者直接崩溃. NS ...

  2. 解决Sping 框架 Controller@Value获取不到值

    原因:要获取 int.properties 中的数据 但是 一直拿不到值 如下代码 使用这种方式注入 *.properties文件 <!-- 引入配置文件 --> <context: ...

  3. Spring boot 配置 swagger

    1.maven配置包 <!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger2 --> <dep ...

  4. 修改host简化远程访问

    问题描述: 使用本机登陆服务器时,需要经常输入IP地址,在局域网下和非局域网下输入的IP又不一样,十分麻烦,如果可以给IP命名一个简单的名字,岂不是很方便? 解决方法: 修改host文件: vim / ...

  5. AutoFac文档13(转载)

    目录 开始 Registering components 控制范围和生命周期 用模块结构化Autofac xml配置 与.net集成 深入理解Autofac 指导 关于 词汇表 属性注入 属性注入使用 ...

  6. IOS委托,实现两个UIView相互传值

    转自:http://my.oschina.net/wbei/blog/89325 detegate委托在IOS中是一种随处可见的模式,通俗的说,就是我把想做的某件事委托给其他人去做,就好像Java中的 ...

  7. SimpleDateFormat线程不安全及解决的方法

    一. 为什么SimpleDateFormat不是线程安全的? Java源代码例如以下: /** * Date formats are not synchronized. * It is recomme ...

  8. Qt 插件综合编程-基于插件的OpenStreetMap瓦片查看器client(1)-墨卡托投影与坐标控制

    (相关的代码能够从https://github.com/goldenhawking/mercator.qtviewer.git直接克隆) 我们如今是准备做一个C/S架构的地图显示控件.就必定牵扯到坐标 ...

  9. JAX-WS使用Handler实现简单的WebService权限验证

    WebService如果涉及到安全保密或者使用权限的时候,WS-Security通常是最优选择.WS-Security (Web服务安全) 包含了关于如何在WebService消息上保证完整性和机密性 ...

  10. Python操作Word【批量生成文章】

    http://www.cnblogs.com/codex/p/4668396.html 需要做一些会议记录.总共有多少呢?五个地点x7个月份x每月4篇=140篇.虽然不很重要,但是140篇记录完全雷同 ...