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: 具体的实现: ...
随机推荐
- Session会话跟踪
用encodeURL重写URL public class SessionA extends HttpServlet { @Override protected void doGet(HttpServl ...
- Windows+Apache+PHP5配置
今天配置Windows+Apache+PHP时,遇到的问题,记录下供大家参考,也供自己以后参考!需要特别注意的:PHP v9版本的 非线程安全的 只适用于IIS,5.3版本的NTS版的没有php5ap ...
- 【转】C#实现MD5加密
转自:C#实现MD5加密 常用的如下: 方法一 首先,先简单介绍一下MD5 MD5的全称是message-digest algorithm 5(信息-摘要算法,在90年代初由mit laborator ...
- 从PHP程序员到RAW开发~
RAW是一款PHP网站开发系统,即使不懂PHP,也可以使用RAW进行PHP程序开发,当然如果已经掌握了PHP,那么使用RAW开发将会是如虎添翼! 怎么理解“如虎添翼”:我们平时要做一个项目的话,我们要 ...
- chroot命令
CHROOT就是Change Root,也就是改变程序执行时所参考的根目录位置.通过chroot机制来更改某个进程所能看到的根目录,即将某进程限制在指定目录中,保证该进程只能对该目录及其子目录的文件有 ...
- 驯服你的Windows Server 2003
虽然通过一些技巧可以让Windows Server 2003更符合我们的使用习惯,但对我等菜鸟来说,操作还是有相当的难度,有没有更简单.更省事的驯服它的办法呢?有,那就是使用Windows Serve ...
- 二代USBKEY与一代USBKEY有什么区别?使用时需要注意什么?
二代USBKEY相较于一代USBKEY产品,增加了屏幕以及按键功能:可通过二代USBKEY产品的屏幕查看交易或操作信息,通过按键的方式进行上翻.下翻.确认.取消等操作. 二代USBKEY产品采用Mic ...
- JavaEE Tutorials (8) - Java持久化API介绍
8.1实体96 8.1.1实体类的需求97 8.1.2实体类中的持久化字段和属性97 8.1.3实体的主键101 8.1.4实体关系中的多重性103 8.1.5实体关系中的方向103 8.1.6实体中 ...
- VS2010/MFC对话框:非模态对话框的创建及显示
非模态对话框的创建及显示 上一节讲了模态对话框及其弹出过程,本节接着讲另一种对话框--非模态对话框的创建及显示. 已经说过,非模态对话框显示后,程序其他窗口仍能正常运行,可以响应用户输入,还可以相互切 ...
- 利用Crowbar抓取网页异步加载的内容 [Python俱乐部]
利用Crowbar抓取网页异步加载的内容 [Python俱乐部] 利用Crowbar抓取网页异步加载的内容 在做 Web 信息提取.数据挖掘的过程中,一个关键步骤就是网页源代码的获取.但是出于各种原因 ...