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)优点:有缓存,而且是二级缓存: ...
随机推荐
- pageHelper插件+传统分页处理
为什么要使用pageHelper:https://www.cnblogs.com/ljdblog/p/6725094.html 配置文件详解:https://www.cnblogs.com/cksvs ...
- .NET APlayer播放器 demo
工作需要,想开发一款播放器,当无意间浏览到APlayer的时候大爱啊,有木有迅速投入精力,在APlayer论坛看大牛们的作品及经验,看SDK中提供的chm电子书最后看了博客园中周见智的文章(灰常好!最 ...
- Mysql数据库乱码总结
今天又独到了Mysql乱码问题,过去总是匆匆的解决了就算了.这次我实在受不了了.每次都是迷迷糊糊的改好的. 这次决定好好探索一把,看了很多资料及博客之后才理解了点.先记录下来.如有不对的请指正. 1. ...
- android launchmode singleinstance问题
问题描述 最近测试关于launchmode的四种方式 默认模式 top singletask 都已经了解了 唯独这个instance模式 我的问题是 我们只作2个activity的假设A和B,其中A为 ...
- Codeforces Beta Round #91 (Div. 2 Only) A. Lucky Division【暴力/判断是不是幸运数字4,7的倍数】
A. Lucky Division time limit per test 2 seconds memory limit per test 256 megabytes input standard i ...
- Codeforces 908D New Year and Arbitrary Arrangement(概率DP,边界条件处理)
题目链接 Goodbye 2017 Problem D 题意 一个字符串开始,每次有$\frac{pa}{pa+pb}$的概率在后面加一个a,$\frac{pb}{pa+pb}$的概率在后面加一个 ...
- Codeforces 570D - Tree Requests(树上启发式合并)
570D - Tree Requests 题意 给出一棵树,每个节点上有字母,查询 u k,问以 u 为根节点的子树下,深度为 k 的所有子节点上的字母经过任意排列是否能构成回文串. 分析 一个数组 ...
- N皇后问题(C++实现和函数式编程实现)
题意 在 N * N 的方格棋盘放置了 N 个皇后,使得它们不相互攻击(即任意2个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成45角的斜线上.求出有多少种合法的放置方法. C++实现(位运算 ...
- JD2
Business Requirement Support l Develops and communicates plan to manage vendor review of requirement ...
- sql server 2005 链接服务器:未将服务器 配置为用于 RPC
原文:sql server 2005 链接服务器:未将服务器 配置为用于 RPC RPC: 远程过程调用(Remote Procedure Calls) --LinkedServer.Rpc 属性: ...