mongoDB用java实现增删改查
package mongo; import java.net.UnknownHostException; import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.Mongo;
import com.mongodb.MongoException; public class connection {
public static void main(String[] args){
try{
Mongo m = new Mongo("localhost", 27017);
DB db = m.getDB("company");
DBCollection collection = db.getCollection("employees");
BasicDBObject employee = new BasicDBObject();
employee.put("name", "Hannah");
employee.put("no", 2);
collection.insert(employee);
BasicDBObject searchEmployee = new BasicDBObject();
searchEmployee.put("no", 2);
DBCursor cursor = collection.find(searchEmployee);
while(cursor.hasNext()){
System.out.println(cursor.next());
}
System.out.println("The Search Query has Executed!");
}catch(UnknownHostException e){
e.printStackTrace();
}catch(MongoException e){
e.printStackTrace();
}
}
}
{ "_id" : { "$oid" : "5454fa4458404d12637d418c"} , "name" : "Hannah" , "no" : 2}
The Search Query has Executed!
import java.net.UnknownHostException;
import java.util.Set; 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; public class Test { /**
* @author gaogao
* @param args
* @throws MongoException
* @throws UnknownHostException
*/
public static void main(String[] args) throws UnknownHostException,
MongoException {
// TODO Auto-generated method stub
// 连接本地数据库
Mongo m = new Mongo();
// 创建名为new_test_db的数据库
DB db = m.getDB("new_test_db");
// 获取new_test_db中的集合(类似于获取关系数据库中的表)
Set<String> cols = db.getCollectionNames();
// 打印出new_test_db中的集合,这里应当为null
for (String s : cols) {
System.out.println(s);
}
// 创建一个叫做"new_test_col"的集合
DBCollection collection = db.getCollection("new_test_col");
// 初始化一个基本DB对象,最终插入数据库的就是这个DB对象
BasicDBObject obj = new BasicDBObject();
// 放入几个键值对
obj.put("from", "搞搞");
obj.put("to", "宝宝");
obj.put("subject", "狗子爱宝子");
//插入对象
collection.insert(obj);
//查看一条记录,findOne()=find().limit(1);
DBObject dbobj=collection.findOne();
//打印出刚才插入的数据
System.out.println(dbobj);
//现在我们来插入9条{ranking:i}的数据
for(int i=0;i<9;i++){
collection.insert(new BasicDBObject().append("ranking", i));
}
//打印集合中的数据总数,这里应当输出10
System.out.println(collection.getCount());
//下面我们来遍历集合,find()方法返回的是一个游标(cursor),这里的概念和关系数据库很相似
DBCursor cursor=collection.find();
//然后我们使用这个游标来遍历集合
while(cursor.hasNext()){
System.out.println(cursor.next());
}
//下面来看一些略复杂一点的查询技巧,第一个,简单的条件查询,查询ranking为1的记录
BasicDBObject query=new BasicDBObject();
query.put("ranking", 1);
cursor=collection.find(query);
while(cursor.hasNext()){
System.out.println(cursor.next());
}
//下面是更复杂的条件查询,查询ranking大于5小于9的记录
query=new BasicDBObject();
query.put("ranking", new BasicDBObject("$gt", 5).append("$lt", 9));
cursor=collection.find(query);
while(cursor.hasNext()){
System.out.println(cursor.next());
}
//最后删除我们的测试数据库
m.dropDatabase("new_test_db");
}
}
mongoDB用java实现增删改查的更多相关文章
- 基于mongodb的java之增删改查(CRUD)
1,下载驱动https://github.com/mongodb/mongo-java-driver/downloads,导入工程java中 2,建立测试代码 import java.net.Unkn ...
- 十四:SpringBoot-配置MongoDB数据库,实现增删改查逻辑
SpringBoot-配置MongoDB数据库,实现增删改查逻辑 1.MongoDB数据库 1.1 MongoDB简介 1.2 MongoDB特点 2.SpringBoot整合MongoDB 2.1 ...
- mongodb的安装与增删改查
mongodb是一款分布式的文件存储的数据库,注意这两个词,分布式和文件存储.mongodb支持复制和分片,可以合理的运用空间的大小,也可以达到容灾的目的.另外文件存储也是一个特点,抛弃了传统的表的概 ...
- MongoDB学习-->命令行增删改查&JAVA驱动操作Mongodb
MongoDB 是一个基于分布式文件存储的数据库. 由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关 ...
- mongoDB (mongoose、增删改查、聚合、索引、连接、备份与恢复、监控等等)
MongoDB - 简介 官网:https://www.mongodb.com/ MongoDB 是一个基于分布式文件存储的数据库,由 C++ 语言编写,旨在为 WEB 应用提供可扩展的高性能数据存储 ...
- JAVA JDBC 增删改查简单例子
1.数据库配置文件jdbc.properties driver=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/test username= ...
- MongoDB的基本操作(增删改查)
目录 概念整理 数据库:一个MongoDB中可以建立多个数据库. 集合:MongoDB的文档组. 文档:实际存放数据的地方. 常见的操作 数据库(新增,删除) 集合(新增,编辑,删除) 文档(增删 ...
- MongoDB学习笔记,基础+增删改查+索引+聚合...
一 基础了解 对应关系 -> https://docs.mongodb.com/manual/reference/sql-comparison/ database -> database ...
- java中增删改查(CRUD)总结
对于User表增删改查:1:save(保存方法) view(查询所有记录) update(更新方法) delete(删除方法) 通过method这个参数进行判断执行不同的操作 2: 具体的实现: ...
随机推荐
- JavaEE Tutorials (13) - 使用锁定控制对实体数据的并发访问
13.1实体锁定和并发概述180 13.1.1使用乐观锁定18113.2锁模式181 13.2.1设置锁模式182 13.2.2使用悲观锁定183
- HDU 5893 List wants to travel(树链剖分)
[题目链接]http://acm.hdu.edu.cn/showproblem.php?pid=5893 [题目大意] 给出一棵树,每条边上都有一个边权,现在有两个操作,操作一要求将x到y路径上所有边 ...
- QT与JavaScript互调 - 虹的日志 - 网易博客
QT与JavaScript互调 - 虹的日志 - 网易博客 QT与JavaScript互调 2012-05-29 21:43:14| 分类: 技术 | 标签:qt javascript w ...
- 【解决方法】You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE)
出现场景: 正常调试是没有问题的,但是在Archive的时候,报出了这个错误. 问题详情: (null): URGENT: all bitcode will be dropped because ‘x ...
- UIKit封装的系统动画
简介 在UIKit中,对UIView封装了很多类方法来进行简单的动画实现,在动画过程中,通过对属性值的修改来完成一系列的效果. 在IOS4以前,主要通过 + beginAnimation + setA ...
- ostringstream的使用方法
ostringstream的使用方法 [本文来自]http://www.builder.com.cn/2003/0304/83250.shtml http://www.cppblog.com/alan ...
- MVC Razor中 如何截断字符串
有时候显示的内容过长,使用MVC编程时,如何截断显示的内容呢.我知道你肯定有很多办法这样做的,但是在学习MVC时,还是使用一些新的办法做吧> Razor 标记语法编程. @helper Trun ...
- js字面量
以前一直对js字面量模棱两可. '字面量是一种表示值的记法.' js字面量(literal) 分为以下几个 number literal 8 就是数字字面量 string liter ...
- union 和 union all 有什么不同?
假设我们有一个表 Student, 包括以下字段与数据:drop table student;create table student( idint primary key,name nvarchar ...
- 覆盖与重载与隐藏——SAP电面(3)
参考:http://man.chinaunix.net/develop/c&c++/c/c.htm#_Toc520634042 8.2.1 重载与覆盖 成员函数被重载的特征: (1)相同的范围 ...