mongoDB Java SDK CRUD操作例子
import java.net.UnknownHostException;
import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.DBObject;
import com.mongodb.Mongo;
import com.mongodb.MongoException;
/**
* mongoDB CURD test
*
* author:svennee
*/
public class testMongoDB {
public static void main(String[] args) {
try {
/**
* Connection MongoDB
*/
/*
* MongoObject have a constructor(String, int)
*
* String = host:127.0.0.1(default value) or 192.168.1.155
* int = port:27017(default value)
*/
Mongo mongo = new Mongo("192.168.1.161", 27017);
DB db = mongo.getDB("n_db_test");
DBCollection city = db.getCollection("city");
/**
* Insert data
*/
BasicDBObject needAddObject = new BasicDBObject();
needAddObject.put("cid", "c001");
needAddObject.put("city_name", "武汉");
needAddObject.put("country", "湖北");
city.insert(needAddObject);
System.out.println("Insert data success~");
/**
* Read data
*/
BasicDBObject queryCondition = new BasicDBObject();
queryCondition.put("city_name", "武汉");
DBCursor queryCursor = city.find(queryCondition);
DBCursor queryAllCursor = city.find();
while (queryCursor.hasNext()) {
System.out.println("Read condition data:"+queryCursor.hashCode() + " ReadValue:" + queryCursor.next());
}
while (queryAllCursor.hasNext()) {
System.out.println("Read All data:"+queryAllCursor.hashCode() + " ReadValue:" + queryAllCursor.next());
}
System.out.println("Read data success~");
/**
* Modify data
*/
// One method(这种强大些!)
BasicDBObject needModifyData = new BasicDBObject();
needModifyData.put("cid", "c001");
DBCursor modifyCursor = city.find(needModifyData);
if (modifyCursor.hasNext()) {
DBObject modifyObject = modifyCursor.next();
modifyObject.put("cid", "c002");
city.save(modifyObject);
}
// Two method
BasicDBObject old_val = new BasicDBObject(),new_val = new BasicDBObject();
old_val.put("city_name", "武汉");
new_val.put("city_name", "武汉苏州");
city.update(old_val, new_val);
System.out.println("Modfiy data success~");
/**
* Delete data
*/
BasicDBObject needDelData = new BasicDBObject();
needDelData.put("city_name", "武汉苏州");
DBCursor delCursor = city.find(needDelData);
while (delCursor.hasNext()) {
DBObject delObject = delCursor.next();
city.remove(delObject);
}
System.out.println("Delete data success~");
} catch (UnknownHostException e) {
System.err.println("UnknownHostException");
e.printStackTrace();
} catch (MongoException e) {
System.err.println("MongoException");
e.printStackTrace();
}
}
}
mongoDB Java SDK CRUD操作例子的更多相关文章
- mongodb学习(四)CRUD操作
CRUD操作: 1. 插入操作: 直接使用 insert可执行单个操作,也可以执行批量操作 书上的batchInsert会报错.似乎被废弃了. db.foo.insert({"bar&quo ...
- 关于Mongdb的java的CRUD操作
package mongodb; import java.net.UnknownHostException;import java.util.List; import com.mongodb.Basi ...
- MongoDB -- JAVA基本API操作
package com.example.mongodb.mongodb.demo; import com.mongodb.MongoClient; import com.mongodb.client. ...
- 【翻译】MongoDB指南/CRUD操作(四)
[原文地址]https://docs.mongodb.com/manual/ CRUD操作(四) 1 查询方案(Query Plans) MongoDB 查询优化程序处理查询并且针对给定可利用的索引选 ...
- 【翻译】MongoDB指南/CRUD操作(三)
[原文地址]https://docs.mongodb.com/manual/ CRUD操作(三) 主要内容: 原子性和事务(Atomicity and Transactions),读隔离.一致性和新近 ...
- 【翻译】MongoDB指南/CRUD操作(二)
[原文地址]https://docs.mongodb.com/manual/ MongoDB CRUD操作(二) 主要内容: 更新文档,删除文档,批量写操作,SQL与MongoDB映射图,读隔离(读关 ...
- 【翻译】MongoDB指南/CRUD操作(一)
[原文地址]https://docs.mongodb.com/manual/ MongoDB CRUD操作(一) 主要内容:CRUD操作简介,插入文档,查询文档. CRUD操作包括创建.读取.更新和删 ...
- MongoDB的CRUD操作
1. 前言 在上一篇文章中,我们介绍了MongoDB.现在,我们来看下如何在MongoDB中进行常规的CRUD操作.毕竟,作为一个存储系统,它的基本功能就是对数据进行增删改查操作. MongoDB中的 ...
- 【Java EE 学习 44】【Hibernate学习第一天】【Hibernate对单表的CRUD操作】
一.Hibernate简介 1.hibernate是对jdbc的二次开发 2.jdbc没有缓存机制,但是hibernate有. 3.hibernate的有点和缺点 (1)优点:有缓存,而且是二级缓存: ...
随机推荐
- shiro配置参考(二)可以和mybatis的配置放在一个文件中(不建议这样,可以拆分开来,注意相关配置即可)
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...
- 使用 JavaScript 将网站后台的数据变化实时更新到前端-【知乎总结】
问: 难道只能设置定时器每隔一秒通过 Ajax 向后台请求数据来实现吗? 答: 1. nodejs的 http://socket.io 支持上述 李宏训 所说的三种方式,另外还支持 Flash Soc ...
- 列表控件ListBox关联的MFC中的类:CListBox
列表控件ListBox关联的MFC中的类:CListBox ######################################################## 1.在列表的结尾添加一项: ...
- mysql 主从手动切换
将主从(3307主--3308从)切换 前提:3307正常 一.将3307设为只读.命令行操作 # 修改配置文件 vim /etc/mysql/mysql-//my.cnf # 在[mysqld]中增 ...
- hihocoder Arithmetic Expression【在线查询】
Arithmetic Expression 时间限制:2000ms 单点时限:200ms 内存限制:256MB 描述 Given N arithmetic expressions, can you ...
- 洛谷——2871[USACO07DEC]手链Charm Bracelet——01背包
题目描述 Bessie has gone to the mall's jewelry store and spies a charm bracelet. Of course, she'd like t ...
- 替换Ubuntu默认的登录背景
Ubuntu默认的登录背景看起来还是比较高贵的,但是作为一个爱折腾的人,当然要换成自己喜欢的背景图了.一开始跟着百度走,进了不少坑,最后还是自己走出来的.先上一个成品照 百度得到的答案几乎都是安装ub ...
- docker网络及Dockerfile
1.制作镜像 使用阿里的yum源,网址:https://opsx.alibaba.com/mirror,或者mirrors.aliyun.com,点击帮助,就会有弹框出来. docker pull c ...
- [BZOJ3237][AHOI2013]连通图(分治并查集)
3237: [Ahoi2013]连通图 Time Limit: 20 Sec Memory Limit: 512 MBSubmit: 1736 Solved: 655[Submit][Status ...
- 关于MapControl和PageLayout地图同步的问题
按照ArcMap的处理方式,地图和制图是分两个页面的,他们之间通过共享同一个Map对象来实现地图同步,具体做法就是在PageLayoutControl的PageLayoutReplaced事件发生时, ...