java操作mongoDB查询的示例分析

47次阅读
没有评论

共计 2131 个字符,预计需要花费 6 分钟才能阅读完成。

自动写代码机器人,免费开通

丸趣 TV 小编给大家分享一下 java 操作 mongoDB 查询的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

java 操作 mongo 查询的实例详解

前言:

 MongoDB 是一个基于分布式文件存储的数据库。由 C ++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。

  MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似 json 的 bson 格式,因此可以存储比较复杂的数据类型。Mongo 最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。

  在可视化工具中查询非常方便,类似于 {key : value}, 这种查询,高级查询也类似,比如查询某个字段的值大于 5,我们就可以查 {key : { $gt : 5} }, 这要归功于 monggo 面向集合存储,存储对象类型的数据(JSON 的二进制数据 BSON),这要以来,查询很方便,其它的高级查询,比如小于 $lt,大于等于 $gte,小于等于 $lte, 在某个范围 $in, 不在某个范围 $nin, 等等,都可以通过上面的方式查询出来。

  现在通过 java 中的一些代码展示通过 java 来操纵 mongo 查询。其中包含准确匹配查询,高级查询,在两个时间范围内查询,模糊查询,分页实现等查询。

详细见代码。

try { 
 System.out.println( =========******** 测试 3 开始 **********===========*************  
 // 先获取 mongo 库的集合 DBCollection 对象  
 DBCollection data = (DBCollection) mongoClientService.getColectionByName( mongo 库集合名称  
 
 BasicDBObject query3 = new BasicDBObject(); 
 query3.put( name , Tom // 查找姓名为 Tom 
 
 // 查询两个时间范围的,用 map 包装一下  
 Map String, Object  queryMap = new HashMap (); 
 queryMap.put( $gt ,  1496911821071  
 queryMap.put( $lt ,  1496915447871  
 query3.put(timeStamp , new BasicDBObject(queryMap)); 
 // 模糊匹配 rule 查询  
 query3.put(businessRuleName , new BasicDBObject( $regex , rule)); 
 DBCursor result3 = data.find(query3); 
 
 String resultCode =  4  
 if (4 .equals(resultCode)) { 
 BasicDBList cond = new BasicDBList(); 
 cond.add( 0  
 cond.add( 1  
 cond.add( 2  
 cond.add( 3  
 query3.put(resultCode , new BasicDBObject( $nin , cond));// 查询 resultCode 不是 0,1,2,3 的  
 } 
 System.out.println(result3.count());//count() 方法得到查询到的记录数  
 
 result3.skip(10).limit(20);// 分页,skip(): 从第几条开始,limit(): 限制返回的条数  
 
 while (result3.hasNext()) { 
 DBObject dbObject = (DBObject) result3.next(); 
 System.out.println(JSON.serialize(dbObject)); 
 System.out.println( ------------  
 } 
 System.out.println(result3.count());// 
 System.out.println(=========******** 测试 3 结束 **********===========*************  } catch (Exception e) { 
 e.printStackTrace(); 
 System.out.println(--------- 测试 3 异常了 ----------  }

  上面包含了很多方式的查询的例子,主要操纵的是 DBCollection, BasicDBObject, DBCursor , BasicDBList 这四个类,仅供参考。

以上是“java 操作 mongoDB 查询的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注丸趣 TV 行业资讯频道!

向 AI 问一下细节

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-04发表,共计2131字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)