`
rsljdkt
  • 浏览: 454348 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Java MongoDB 数据库操作集锦

    博客分类:
  • DB
阅读更多

  关于分布式文档存储数据库MongoDB的介绍就不多说了,下面总结了一些常用的MongoDB命令行工具和Java API的使用方法。

  命令行工具Mongo.exe 

  mongo.exe工具在bin目录下,启动MongoDB服务器后,打开开程序,即自动连接到服务器上,并切换当前数据库到test数据库。常用的命令有:

show dbs  //显示数据库列表
show collections  //显示当前数据库中的集合
show users  //显示用户
user <db name>  //切换当前数据库
db.help()  //显示数据库操作命令
db.foo.help()  //显示集合操作命令,foo是当前数据库下,一个叫foo的集合
db.foo.find()  //对当前数据库下的foo集合进行查找,会列出所有数据
db.foo.find({p:1}) //查询当前数据库foo集合下有属性p并且值为1的对象
db.foo.insert({name:'Jack'})  //在foo集合下插入一条数据,name属性的值为'Jack'
db.foo.remove({name:'Jack'})  //删除foo集合下所有有name属性并且值为'Jack'的对象

 Java Mongo操作

 常用Java类

Mongo:用于执行一些数据库操作,如建立一个数据库等
DB:对应一个数据库,可以用来建立集合等
DBCollection:对应一个集合(类比关系数据库中的表),可用于增删改查对象
DBObject:接口,代表一个具体的记录。
BasicDBObject:实现了DBObject,由于是key-value结构,所以用起来和HashMap基本一致。
DBCursor:游标,用来遍历查询取得的数据,实现了Iterable和Iterator

 

建立数据库连接

Mongo m = new Mongo("localhost");//默认使用27017端口
DB db = m.getDB("test");//获得名为test的数据库,没有则创建
DBCollection students = db.getCollection("students"); //获得名为students的集合,没有则自动创建

查看MongoDB数据库列表

System.out.println(m.getDatabaseNames());

查看当前数据库下所有集合

System.out.println(db.getCollectionNames());

删除一个数据库

 

m.dropDatabase("test");

插入数据

 

BasicDBObject o = new BasicDBObject();
o.put("name", "jack");
students.insert(o);

查询数据

 

		//条件查询,students集合下有属性name且值为"Jack"的对象
		BasicDBObject cond = new BasicDBObject();
		cond.put("name", "Jack");
		DBCursor cur = students.find(cond);
		while(cur.hasNext()){
			System.out.println(cur.next());
		}
		
		//查询students集合下的所有对象
		cur = students.find();
		while(cur.hasNext()){
			System.out.println(cur.next());
		}
		
		//查询students集合下的第一个对象
		System.out.println(students.findOne());
		
		//查询记录数量
		System.out.println(students.find().count());
		
		//查询部分数据块
		cur = students.find().skip(0).limit(1);
		while(cur.hasNext()){
			System.out.println(cur.next());
		}
		//比较查询 
		//"$gt": 大于
		//"$gte":大于等于
		//"$lt": 小于
		//"$lte":小于等于
		//"$in": 包含
		//查询age>19的学生
		cond = new BasicDBObject();
		cond.put("age", new BasicDBObject("$gt",19));
		cur = students.find(cond);
		while(cur.hasNext()){
			System.out.println(cur.next());
		}
		//查询19<age<30的学生
		cond = new BasicDBObject();
		cond.put("age",new BasicDBObject("$gt",19).append("$lt", 30));
		cur = students.find(cond);
		while(cur.hasNext()){
			System.out.println(cur.next());
		}
		//查询 age in (19,20)的学生
		cond = new BasicDBObject();
		int [] arr = {19,20};
		cond.put("age",new BasicDBObject("$in",arr));
		cur = students.find(cond);
		while(cur.hasNext()){
			System.out.println(cur.next());
		}
		//正则表达式查询
		Pattern p = Pattern.compile("Ja?k");
		cond = new BasicDBObject();
		cond.put("name", p);
		cur = students.find(cond);
		while(cur.hasNext()){
			System.out.println(cur.next());
		}

 更新操作

主要使用update(BasicObject, BasicObject)方法

  第一个参数是查找条件,需要修改的对象,第二个参数是修改内容,如果不用set就是把原来的对象更新为现在的对象。
如果有$set那就是更新属性,如果属性不存在则添加。其他参数使用方法一样。 

		//更新name="Jack"的学生的年龄为21
		students.update(new BasicDBObject("name","Jack"), new BasicDBObject("$set", new BasicDBObject("age",21)));

 删除操作

 

		//删除名为Jack的学生
		BasicDBObject cond = new BasicDBObject();
		cond.put("name", "Jack");
		students.remove(cond);

 

0
5
分享到:
评论

相关推荐

    java实现mongodb数据库的操作

    本资料将深入讲解如何使用Java实现对MongoDB数据库的操作。 一、MongoDB简介 MongoDB是一个基于分布式文件存储的NoSQL数据库,它摒弃了传统的关系型数据库模型,采用JSON(JavaScript Object Notation)格式的文档...

    Mongodb数据库JAVA操作例子

    本篇将详细介绍如何利用Java实现MongoDB数据库的增、删、改、查(CRUD)操作。 1. **连接MongoDB** 要使用Java连接MongoDB,首先需要引入MongoDB Java驱动程序的依赖。在Maven项目中,可以在pom.xml文件中添加以下...

    Java操作MongoDB数据库示例分享

    - `mongoDBs`:一个Hashtable,用于存储已连接的MongoDB数据库实例,以字符串形式的数据库名称为键。 3. **静态块**: - `static`块在类加载时执行,用于初始化MongoDB连接。调用`init()`方法来设置MongoDB配置。...

    Java操作MongoDB数据库方法详解

    本文将详细介绍如何使用 Java 操作 MongoDB 数据库,包括连接、数据库操作以及 CRUD(Create、Read、Update、Delete)操作。 **一、Java 连接 MongoDB** 1. **连接单台 MongoDB** 在 Java 中,你可以使用 `Mongo`...

    java+MongoDB实现存图片、下载图片的方法示例

    在本文中,我们将使用java作为开发语言,并配合MongoDB数据库来存储和下载图片。java是一种广泛使用的编程语言,known for its platform independence和large community support。MongoDB是一种NoSQL数据库,known ...

    使用java上传MP4文件至mongodb数据库,并下载 源代码

    本篇文章将深入讲解如何使用Java来上传MP4文件到MongoDB,并进行下载操作。 首先,我们需要引入MongoDB的Java驱动程序。MongoDB提供了Java驱动库,通过Maven或Gradle可以轻松添加依赖。在Maven的`pom.xml`中,你...

    java操作MongoDB数据库代码实例

    该rar包中包括MOngoDB数据库操作基本的增删改查,以及在CMD命令行中怎么配置MOngodb和增删改查,还有就是连接mongoDB的jar包和详细的操作文档,本来想上传NOde.js来着,可是只能上传60兆,只能放弃了,不过这些已经...

    MongoDB数据库简单介绍

    ### MongoDB数据库简单介绍 #### MongoDB概述 MongoDB是一款开源、基于分布式文件存储的NoSQL数据库系统,它使用C++语言编写。与传统的关系型数据库不同,MongoDB采用文档数据模型来存储数据,这种数据模型非常灵活...

    使用java上传MP4文件至mongodb数据库,并下载

    使用Java上传MP4文件至MongoDB数据库,并下载 本文将详细介绍如何使用Java上传MP4文件至MongoDB数据库,并下载。首先,我们需要创建一个Maven项目,并配置pom.xml文件,引入MongoDB相关的依赖和单元测试的依赖。...

    mongodb数据库jar包

    这个压缩包包含的就是Java连接MongoDB所需的驱动jar包,确保了开发者能够通过编程方式连接到MongoDB数据库并执行各种操作。 首先,让我们详细了解MongoDB数据库。MongoDB是一种NoSQL数据库,它不使用传统的关系型...

    NoSQL MongoDB数据库操作指南

    内容概要:本文档介绍了MongoDB这款流行的非关系型数据库的基本操作,涵盖了启动和连接MongoDB、数据库操作(创建、查看、删除)、集合操作(创建、查看、删除)、文档操作(插入、查询、更新、删除)等内容。...

    java连接mongodb的jar包

    总的来说,Java连接MongoDB的关键在于理解和使用MongoDB Java驱动程序,通过它,开发者可以轻松地在Java应用中实现对MongoDB数据库的增删改查等各种操作。在实际开发中,确保正确配置JAR文件,理解连接字符串的格式...

    mongoDB-CURD操作-----JAVA

    数据库操作: MongoDB中的每个数据库都是由一个或多个集合(类似关系数据库中的表)组成的。我们可以使用`MongoDatabase`对象来操作数据库: ```java MongoDatabase database = mongoClient.getDatabase(...

    Java操作Mongodb数据库实现数据的增删查改功能示例

    Java 操作 Mongodb 数据库实现数据的增删查改功能示例 本篇文章主要介绍了 Java 操作 Mongodb 数据库实现数据的增删查改功能,通过完整的实例形式分析了 Java 针对 MongoDB 数据库的连接、增删查改等相关操作技巧。...

    Java单例模式下的MongoDB数据库操作工具类

    Java单例模式下的MongoDB数据库操作工具类 在Java编程中,单例模式是一种常见的设计模式,用于限制类的实例化次数,确保某个类只有一个实例。在数据存储和处理中,MongoDB是一个流行的NoSQL数据库,用于存储和处理...

    jdbc java mongodb mysql 相互同步

    引入依赖后,我们可以创建MongoClient并连接到MongoDB数据库: ```java MongoClient mongoClient = new MongoClient("localhost", 27017); MongoDatabase db = mongoClient.getDatabase("testDB"); MongoCollection...

    MongoDB数据库

    9. **开发工具**:MongoDB Compass是一款图形用户界面工具,用于可视化数据库、集合、文档以及执行查询和管理操作。此外,还有MongoDB Shell、MongoDB Atlas(云托管服务)等工具,方便开发和运维。 10. **安全性**...

    MongoDB Java获取集合.pdf

    Java 是广泛使用的编程语言,MongoDB 提供了 Java 驱动程序,使得开发者可以轻松地在 Java 应用程序中操作 MongoDB 数据库。在本文中,我们将详细探讨如何使用 Java MongoDB 驱动程序来获取集合。 首先,我们需要...

    Java程序对MongoDB数据库进行CRUD操作.pptx

    【Java程序对MongoDB数据库进行CRUD操作】 MongoDB是一种流行的NoSQL(Not Only SQL)非关系型数据库,它的设计思想是面向文档的,适合处理大量结构化和半结构化的数据。与传统的SQL数据库不同,MongoDB不使用表格...

Global site tag (gtag.js) - Google Analytics