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)优点:有缓存,而且是二级缓存: ...
随机推荐
- Buffer源码深入分析
博客园对MarkDown显示的层次感不是很好,大家可以看这里:Buffeer. 本机环境: Linux 4.4.0-21-generic #37-Ubuntu SMP Mon Apr 18 18:33 ...
- Selenium IDE自动化录制脚本
- luogu P1373 小a和uim之大逃离
题目背景 小a和uim来到雨林中探险.突然一阵北风吹来,一片乌云从北部天边急涌过来,还伴着一道道闪电,一阵阵雷声.刹那间,狂风大作,乌云布满了天空,紧接着豆大的雨点从天空中打落下来,只见前方出现了一个 ...
- mysql----kill慢查询
每个与mysqld的连接都在一个独立的线程里运行,您可以使用SHOW PROCESSLIST语句查看哪些线程正在运行,并使用KILL thread_id语句终止一个线程. 如果您拥有SUPER权限,您 ...
- SpringAop名词解释+基于xml的配置
1,AOP名词解释 2,AOP演示 (1)导包: (2)准备目标对象 package com.songyan.service; import org.aspectj.lang.ProceedingJo ...
- linux之vim命令
:tabe fn 在一个新的标签页中编辑文件fngt 切换到下一个标签页gT 切换到上一个标签页:tabr 切换到第一个标签页:tabl 切换到最后一个标签页: ...
- 【myEcplise2015】导入喜欢的主题
1.在官网下载epf样式文件 http://www.eclipsecolorthemes.org/ 2.选择一个喜欢的点击进入,点击下载 3.File -->Import--->Gener ...
- 数据库学习--wildfly配置postgreSQL数据源
前言 实验室最近在做一个物品管理系统的小项目,其中涉及到postgreSQL的使用,刚开始部署到wildfly服务器上时遇到了若干问题,终于在导师的讲解下大体上明白了 ,特此记录分享学习一下. 配置数 ...
- ES6里关于数字的拓展
一.指数运算符 ES6引入的唯一一个JS语法变化是求幂运算符,它是一种将指数应用于基数的数学运算.JS已有的Math.pow()方法可以执行求幂运算,但它也是为数不多的需要通过方法而不是正式的运算符来 ...
- ol 接入百度地图
ol5 如何接入百度地图,网上的资料很多,但是大多都有问题,在级别放大时,地图发生扭曲.为此注重研究了下ol5 接入百度地图的方法. 首先明确以下问题: 百度地图的投影是3857. 百度地图的分辨率和 ...