- 浏览: 67891 次
- 性别:
- 来自: 西安
文章分类
最新评论
前言
MongoDB的java驱动提供了查询的功能,查询条件也是bson对象,这篇就看下怎么进行简单的数据查询
1、数据结构
集合:firstCollection
数据内容:
{ "_id" : ObjectId("55adba52fa1f3cf038c2aea6"), "name" : "user0", "age" : 22, "sex" : 0 }
{ "_id" : ObjectId("55adba52fa1f3cf038c2aea7"), "name" : "user1", "age" : 23, "sex" : 1 }
{ "_id" : ObjectId("55adba52fa1f3cf038c2aea8"), "name" : "user2", "age" : 24, "sex" : 0 }
{ "_id" : ObjectId("55adba52fa1f3cf038c2aea9"), "name" : "user3", "age" : 25, "sex" : 1 }
{ "_id" : ObjectId("55adba52fa1f3cf038c2aeaa"), "name" : "user4", "age" : 26, "sex" : 0 }
{ "_id" : ObjectId("55adba52fa1f3cf038c2aeab"), "name" : "user5", "age" : 27, "sex" : 1 }
2、连接数据库,拿到集合firstCollection
MongoClient mClient = new MongoClient("10.211.55.8");
DB db = mClient.getDB("test");
DBCollection collection = db.getCollection("firstCollection");
3、查询name为user1的对象
查询条件Json内容:
{"name": "user1"}
查询条件Java内容:
BasicDBObject queryObject = new BasicDBObject("name","user1");
执行过程:
DBObject obj = collection.findOne(queryObject);
这样就拿到了name为user1的对象了
4、查询name包含user的对象
这样模糊查询,也就类似于like查询是通过正则表达式来完成的
查询条件Json内容:
{“name”:/user/}
查询条件Java内容:
Pattern queryPattern = Pattern.compile("user", Pattern.CASE_INSENSITIVE);
BasicDBObject queryObject = new BasicDBObject("name",queryPattern);
执行过程:
Pattern queryPattern = Pattern.compile("user", Pattern.CASE_INSENSITIVE);
BasicDBObject queryObject = new BasicDBObject("name",queryPattern);
Cursor cursor = collection.find(queryObject);
while(cursor.hasNext()){
DBObject obj = cursor.next();
System.out.println(obj.toString());
}
5、查询年龄大于24的对象
查询条件Json内容:
{"age":{"$gt":24}}
查询条件Java内容:
两个Bson对象嵌套
BasicDBObject gt = new BasicDBObject("$gt",24);
BasicDBObject queryObject = new BasicDBObject("age",gt);
执行过程:
BasicDBObject gt = new BasicDBObject("$gt",24);
BasicDBObject queryObject = new BasicDBObject("age",gt);
Cursor cursor = collection.find(queryObject);
while(cursor.hasNext()){
DBObject obj = cursor.next();
System.out.println(obj.toString());
}
备注:
$gt:>
$gte:>=
$eq: =
$ne: !=
$lt: <
$lte: <=
$in: in(后面的值为bson对象数组)
$nin: not in(后面的值为bson对象数组)
这些操作符的用法和$gt类似,不在赘述
总结
通过这篇文章就可以对MongoDB进行简单的查询了,但是在具体业务中只有简单查询是不现实的,会有更多的与或关系,这戏内容将在下次文章中叙述。
转自:http://www.cnblogs.com/luoaz/p/4691639.html
MongoDB的java驱动提供了查询的功能,查询条件也是bson对象,这篇就看下怎么进行简单的数据查询
1、数据结构
集合:firstCollection
数据内容:
{ "_id" : ObjectId("55adba52fa1f3cf038c2aea6"), "name" : "user0", "age" : 22, "sex" : 0 }
{ "_id" : ObjectId("55adba52fa1f3cf038c2aea7"), "name" : "user1", "age" : 23, "sex" : 1 }
{ "_id" : ObjectId("55adba52fa1f3cf038c2aea8"), "name" : "user2", "age" : 24, "sex" : 0 }
{ "_id" : ObjectId("55adba52fa1f3cf038c2aea9"), "name" : "user3", "age" : 25, "sex" : 1 }
{ "_id" : ObjectId("55adba52fa1f3cf038c2aeaa"), "name" : "user4", "age" : 26, "sex" : 0 }
{ "_id" : ObjectId("55adba52fa1f3cf038c2aeab"), "name" : "user5", "age" : 27, "sex" : 1 }
2、连接数据库,拿到集合firstCollection
MongoClient mClient = new MongoClient("10.211.55.8");
DB db = mClient.getDB("test");
DBCollection collection = db.getCollection("firstCollection");
3、查询name为user1的对象
查询条件Json内容:
{"name": "user1"}
查询条件Java内容:
BasicDBObject queryObject = new BasicDBObject("name","user1");
执行过程:
DBObject obj = collection.findOne(queryObject);
这样就拿到了name为user1的对象了
4、查询name包含user的对象
这样模糊查询,也就类似于like查询是通过正则表达式来完成的
查询条件Json内容:
{“name”:/user/}
查询条件Java内容:
Pattern queryPattern = Pattern.compile("user", Pattern.CASE_INSENSITIVE);
BasicDBObject queryObject = new BasicDBObject("name",queryPattern);
执行过程:
Pattern queryPattern = Pattern.compile("user", Pattern.CASE_INSENSITIVE);
BasicDBObject queryObject = new BasicDBObject("name",queryPattern);
Cursor cursor = collection.find(queryObject);
while(cursor.hasNext()){
DBObject obj = cursor.next();
System.out.println(obj.toString());
}
5、查询年龄大于24的对象
查询条件Json内容:
{"age":{"$gt":24}}
查询条件Java内容:
两个Bson对象嵌套
BasicDBObject gt = new BasicDBObject("$gt",24);
BasicDBObject queryObject = new BasicDBObject("age",gt);
执行过程:
BasicDBObject gt = new BasicDBObject("$gt",24);
BasicDBObject queryObject = new BasicDBObject("age",gt);
Cursor cursor = collection.find(queryObject);
while(cursor.hasNext()){
DBObject obj = cursor.next();
System.out.println(obj.toString());
}
备注:
$gt:>
$gte:>=
$eq: =
$ne: !=
$lt: <
$lte: <=
$in: in(后面的值为bson对象数组)
$nin: not in(后面的值为bson对象数组)
这些操作符的用法和$gt类似,不在赘述
总结
通过这篇文章就可以对MongoDB进行简单的查询了,但是在具体业务中只有简单查询是不现实的,会有更多的与或关系,这戏内容将在下次文章中叙述。
转自:http://www.cnblogs.com/luoaz/p/4691639.html
发表评论
-
Springboot项目中pom.xml的Oracle配置错误问题
2019-09-27 09:09 457前提:开发工具IDEA2019.2,SpringBoot,m ... -
maven如何添加添加ojdbc6
2019-06-24 14:46 9161、设置环境变量 1.1.添加一个环境变量MAVEN_ ... -
windows10 jdk配置
2019-06-24 14:10 407JAVA_HOME=C:\Program Files\Jav ... -
aven配置默认使用的JDK版本
2019-04-04 09:09 435<div class="iteye-blog ... -
获取ztree 当前节点的所有父节点name!
2018-08-02 09:49 728function getFilePath(treeObj ... -
Bootstrap table无法获取pagesize问题解决
2018-05-01 13:20 1181在bootstrap-table.min.js中搜索 &quo ... -
天地图影像地图服务
2018-01-18 14:20 4245全球影像 http://t0.tianditu.cn/im ... -
微信utf-8格式 post方法
2017-11-08 18:58 642@RequestMapping(value = "c ... -
微信jssdk 图片预览接口调用方法!
2017-11-07 16:23 513$(".weui_uploader_files ... -
使用spring @Scheduled注解执行定时任务、
2017-10-31 13:47 425老大说这配置太麻烦、每个调度都需要多加在spring的配置中、 ... -
利用Calendar类来获取当前的日期
2017-10-18 15:04 531import java.util.Calendar; ... -
BootStrap table 传递搜索参数
2017-09-15 17:57 4385function Search() { var ... -
easyui datebox 时间格式化
2017-08-11 10:39 707//easyui 格式化日期控件 $(" ... -
java判断字符串是否为空的方法
2017-04-01 15:55 442方法一: 最多人使用的一个方法, 直观, 方便, 但效率很低: ... -
HTTP协议详解
2017-03-29 09:57 467引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷、 ... -
js设置form表单内元素为只读属性
2017-03-22 10:57 1375js设置form表单内元素为只读属性 $('#formID' ... -
EasyUI Dialog Buttons 绑定click事件
2017-03-20 11:37 12831、jsp页面定义dialog及Buttons; < ... -
easyui layout 折叠后显示标题
2017-02-06 09:53 829(function($){ var buttonDir = ... -
js获取浏览器长度、宽度!
2016-12-22 16:42 1137有三种方法能够确定浏览器窗口的尺寸(浏览器的视口,不包括工具栏 ... -
Easyui 栏目组定义
2016-05-30 15:43 322columns:[[{ title ...
相关推荐
### MongoDB Java Driver 简单操作详解 #### 一、简介 MongoDB 是一款非常流行的文档型数据库系统,因其灵活性和高性能而被广泛应用于多种场景之中。为了方便开发者使用 Java 进行开发,MongoDB 提供了官方的 Java ...
在"Java使用MongoDB的简单程序"中,我们将学习如何使用Java驱动程序连接到MongoDB数据库。Java驱动程序提供了一套API,使得开发者可以轻松地进行数据操作。基本步骤包括:创建MongoClient实例以连接到MongoDB服务器...
这些JAR文件包含了所有必要的类和方法,使得Java开发者能够编写代码来连接到MongoDB服务器并执行查询或更新操作。 要开始使用MongoDB Java驱动,首先需要将对应的JAR文件添加到项目的类路径中。这可以通过在构建...
以下是一个简单的Java代码示例,展示了如何连接MongoDB并插入数据: ```java import com.mongodb.client.MongoClients; import com.mongodb.client.MongoClient; import com.mongodb.client.MongoDatabase; import ...
在本文中,我们将讨论如何基于`mongodb-driver`开发一个简单的ORM实现,以简化Java中的MongoDB操作。 首先,MongoDB官方驱动程序虽然功能强大,但对于业务开发来说,直接使用API可能会显得复杂。因此,为了提高开发...
MongoDB的Java驱动程序是Java开发者与MongoDB服务器通信的桥梁,它提供了丰富的API,使得在Java应用中执行CRUD(创建、读取、更新、删除)操作变得简单。2.6版本是历史版本,但仍然包含了许多核心功能,如连接管理...
下面是一个简单的Java代码示例,展示了如何使用MongoDB Java驱动程序进行分页查询: ```java MongoClient mongoClient = new MongoClient("localhost", 27017); MongoDatabase database = mongoClient.getDatabase...
它提供了一组丰富的API,使得在Java应用程序中执行CRUD(创建、读取、更新、删除)操作变得简单而高效。MongoDB是一个分布式文档存储数据库,而Java驱动程序则是连接MongoDB服务器与Java应用程序之间的桥梁。 首先...
在Java编程环境中,MongoDB是一个常用的NoSQL数据库系统,它以JSON格式存储数据,提供了高性能、高可用性和可扩展性。本教程将详细介绍如何使用Java与MongoDB进行交互,包括基本的增删改查(CRUD)操作。首先,我们...
本篇将详细介绍如何使用Java连接MongoDB,以及进行基本的数据操作:创建集合、添加文档、修改文档、查询文档和删除文档。 首先,为了连接MongoDB,我们需要引入MongoDB的Java驱动程序依赖。在Maven项目中,可以在...
安装 MongoDB 非常简单,只需要解压下载的 zip 文件即可。用户可以将其解压到任何目录下,例如 D:/MongoDB。为了方便命令行的使用,需要将 D:/MongoDB/bin 添加到系统环境变量的 path 中。 3. MongoDB 的运行 运行...
总的来说,Java操作MongoDB涉及的不仅仅是简单的CRUD操作,还包括对数据库连接、安全性、性能优化等多个方面的理解。学习和掌握这些知识,可以帮助你更好地利用MongoDB进行数据存储和处理。通过不断实践和深入研究,...
Java驱动程序(mongodb_java_driver)是MongoDB官方提供的用于Java应用程序与MongoDB交互的库,它允许开发者通过简单的API来执行各种数据库操作,如增、删、改、查。 在"mongodb_java_demo"这个项目中,我们将深入...
Java作为广泛应用的编程语言,拥有丰富的MongoDB驱动库,使得在Java应用中集成MongoDB变得简单易行。 首先,我们需要引入MongoDB的Java驱动程序。在 Maven 项目中,可以在`pom.xml`文件中添加以下依赖: ```xml ...
本文将详细介绍如何在 Java 中简单操作 MongoDB。 1. **Java 开发环境配置** - **系统**:Windows - **IDE**:Eclipse 或 MyEclipse 8 - **数据库**:MongoDB - **开发依赖库**:JavaEE5 和 mongo-2.5.3.jar...
Java连接MongoDB是Java开发中常见的一项任务,用于与NoSQL数据库进行交互。MongoDB是一个高性能、开源、无模式的文档型数据库,广泛应用于数据存储和处理。在Java环境中,我们通常使用MongoDB的Java驱动程序来实现...
DBObject是一个简单的Java对象,它可以用于存储和检索MongoDB中的数据。下面是一个使用DBObject实现多条件查询的示例代码: ```java BasicDBObject doc5 = new BasicDBObject(); doc5.put("index", 3); doc5.put(...
使用 Java 语言操作 MongoDB 非常简单,只要将驱动文件加入到 CLASSPATH 中就可以使用。建立连接需要指定要连接到的数据库,可以具体指定要连接到的网络地址和端口。 本文档提供了 MongoDB 的基础知识点,包括 ...
MongoDB的Java驱动是连接Java应用程序与MongoDB数据库的关键组件,它提供了丰富的API来执行各种数据库操作。在本示例中,我们将深入探讨如何使用Java驱动实现与MongoDB的交互。 首先,确保已经在项目中引入了...