MongoDB在Java下的增删查改
我们总不能一直使用cmd对数据库操作,数据库总是要在程序中使用的。今天来说一下怎么通过Java调用MongoDB。
学习一下最基本也是最常用的增删查改语句,这是使用数据库的基础。
注意事项:
1、要打开mongod.exe,程序运行期间要一直开着。
2、Java项目里面要导入mongo的jar包,mongo-版本号-jar。
以下为代码:
public class MongoTest {
public static void main(String args[]) throws UnknownHostException, MongoException{
//创建了一个MongoDB的数据库连接对象,它默认连接到当前机器的localhost地址,端口是27017
Mongo mongo = new Mongo();
//获得了一个mydbs的数据库,如果该数据库不存在则会创建
DB db = mongo.getDB("mydbs");
//获取mydbs这个数据库中的数据库表!
DBCollection mydbs = db.getCollection("mydbs");
//以上对应cmd语句 :use mydbs
//在花括号内的内容就是一个BasicDBObject
//如{"name":"binbin"} 就是 BasicDBObject("name","binbin")
//再如{"age":{$lte:50}} 就是 BasicDBObject("age", new BasicDBObject("$lte",50))
//一:基本查询,对应语句:db.mydbs.find()
//将查找的结果返回到游标中
DBCursor cur = mydbs.find();
//如果有数据则输出
while (cur.hasNext()) {
System.out.println(cur.next());
}
//二:插入语句,对应语句:db.mydbs.insert(user)
DBObject user = new BasicDBObject();
user.put("name", "weizhibin");
user.put("age", "20");
user.put("school", "uestc");
mydbs.insert(user);
//三:删除语句,对应语句:db.mydbs.remove({"name":"weizhibin"})
mydbs.remove(new BasicDBObject("name","weizhibin"));
//四:更新语句,对应语句:db.col.update({"name":"weizhibin"},{$set:{"name":"binbin"}})
mydbs.update(new BasicDBObject("name","weizhibin"),new BasicDBObject("$set",new BasicDBObject("name","bibin")));
//五:条件查询,对应语句:db.mydbs.find({"name":"weizhibin"})
DBCursor cur2 = mydbs.find(new BasicDBObject("name","weizhibin"));
//如果有数据则输出
while (cur2.hasNext()) {
System.out.println(cur2.next());
}
}
}
好了,以上是最常用的基本增删查改语句。MongoDB有一些复杂的语句,都是在这些的基础之上延伸的,学起来也不难,在此就不一一列举了。
MongoDB在Java下的增删查改的更多相关文章
- java中CRUD(增删查改)底层代码的实现
java中CRUD(增删查改)底层代码的实现: package com.station.dao; import com.station.model.Product; import java.sql.* ...
- python下sqlite增删查改方法(转)
sqlite读写 #coding=utf-8 import sqlite3 import os #创建数据库和游标 if os.path.exists(' test.db'): conn=sqli ...
- 8天学通MongoDB——第二天 细说增删查改
原文地址:http://www.cnblogs.com/huangxincheng/archive/2012/02/19/2357846.html 看过上一篇,相信大家都会知道如何开启mongodb了 ...
- [MongoDB] MongoDB增删查改
MongoDB的三元素,数据库.集合.文档,集合就是表,文档就是行 开启MongoDB,cd切换到MongoDB的安装目录下的bin目录里,使用命令mongod 开启,参数:--dbpath 路径,把 ...
- MongoDB入门学习(三):MongoDB的增删查改
对于我们这样的菜鸟来说,最重要的不是数据库的管理,也不是数据库的性能,更不是数据库的扩展,而是怎么用好这款数据库,也就是一个数据库提供的最核心的功能,增删查改. 由于M ...
- Java连接MySQL数据库及简单的增删查改操作
主要摘自 https://www.cnblogs.com/town123/p/8336244.html https://www.runoob.com/java/java-mysql-connect.h ...
- java:Hibernate框架1(环境搭建,Hibernate.cfg.xml中属性含义,Hibernate常用API对象,HibernteUitl,对象生命周期图,数据对象的三种状态,增删查改)
1.环境搭建: 三个准备+7个步骤 准备1:新建项目并添加hibernate依赖的jar文件 准备2:在classpath下(src目录下)新建hibernate的配置文件:hibernate.cf ...
- 后端Spring Boot+前端Android交互+MySQL增删查改(Java+Kotlin实现)
1 前言&概述 这篇文章是基于这篇文章的更新,主要是更新了一些技术栈以及开发工具的版本,还有修复了一些Bug. 本文是SpringBoot+Android+MySQL的增删查改的简单实现,用到 ...
- MongoDB数据库(二):增删查改
MongoDB数据库的增删查改 1.插入数据 语法: db.集合名称.insert(document) db.table_name.insert({name:'gj',gender:1}) db.ta ...
随机推荐
- 【转】Hibernate 原汁原味的四种抓取策略
最近在研究 Hibernate 的性能优化的时候碰到了"抓取策略", 由于以前没有详细的研究过, 所以到处找资料, 但是无论从一些讲 Hibernate 书籍,还是他人 Blog ...
- Agilent RF fundamentals (8) Oscillator Decisions
----------------------
- Java并发编程之CountDownLatch
一.场景描述 在多线程程序设计中,经常会遇到一个线程等待一个或多个线程的场景 例如:百米赛跑,十名运动员同时起跑,由于速度的快慢,肯定有先到达和后到达的,而终点有个统计成绩的仪器,当所有选手到达终点时 ...
- OpenGL ES 2: debugging, and improvements to VAO, VBO
OpenGL ES 2: debugging, and improvements to VAO, VBO http://www.altdevblogaday.com/2013/10/12/opengl ...
- C/C++ 安全编码 —— 指针与内存
1. 仿踩内存 if (buf[len - 1] != 0x5A) { return; }
- OpenCV-Python cv2.imdecode()和cv2.imencode() 图片解码和编码
cv2.imdecode()函数从指定的内存缓存中读取数据,并把数据转换(解码)成图像格式;主要用于从网络传输数据中恢复出图像. cv2.imencode()函数是将图片格式转换(编码)成流数据,赋值 ...
- MFC多语言程序版本,在不同的windows系统上的使用 FP_SetThreadUILanguage
from: http://www.cnblogs.com/qijicxl/p/3840157.html 如何使MFC程序界面支持多国语言?这次使用后给自己做一个总结. 我们使用vc6.0的版本来试验 ...
- [转载] ffmpeg Windows下采集摄像头一帧数据,并保存为bmp图片
这里请注意,在编译ffmpeg时,不要使用--disable-devices选项. 使用 --enable-encoder=rawvideo --enable-decoder=rawvideo 启用r ...
- HWOJ-求字符串最后一个单词的长度
题目:给定一个字符串,求最后一个单词的长度,每个单词中间有空格. 例如:输入:hello world 输出:5 C代码:通过. #include <stdio.h> #define m ...
- oracle 删除当前用户下多个表
1.执行Sql语句: select 'drop table '||table_name||';' from cat where table_type='TABLE' 可查询到当前用户下所有的表,如图: ...