久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

java操作mongoDB查詢的示例分析

共計(jì) 2131 個(gè)字符,預(yù)計(jì)需要花費(fèi) 6 分鐘才能閱讀完成。

自動(dòng)寫代碼機(jī)器人,免費(fèi)開通

丸趣 TV 小編給大家分享一下 java 操作 mongoDB 查詢的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

java 操作 mongo 查詢的實(shí)例詳解

前言:

 MongoDB 是一個(gè)基于分布式文件存儲(chǔ)的數(shù)據(jù)庫。由 C ++ 語言編寫。旨在為 WEB 應(yīng)用提供可擴(kuò)展的高性能數(shù)據(jù)存儲(chǔ)解決方案。

  MongoDB 是一個(gè)介于關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫之間的產(chǎn)品,是非關(guān)系數(shù)據(jù)庫當(dāng)中功能最豐富,最像關(guān)系數(shù)據(jù)庫的。他支持的數(shù)據(jù)結(jié)構(gòu)非常松散,是類似 json 的 bson 格式,因此可以存儲(chǔ)比較復(fù)雜的數(shù)據(jù)類型。Mongo 最大的特點(diǎn)是他支持的查詢語言非常強(qiáng)大,其語法有點(diǎn)類似于面向?qū)ο蟮牟樵冋Z言,幾乎可以實(shí)現(xiàn)類似關(guān)系數(shù)據(jù)庫單表查詢的絕大部分功能,而且還支持對(duì)數(shù)據(jù)建立索引。

  在可視化工具中查詢非常方便,類似于 {key : value}, 這種查詢,高級(jí)查詢也類似,比如查詢某個(gè)字段的值大于 5,我們就可以查 {key : { $gt : 5} }, 這要?dú)w功于 monggo 面向集合存儲(chǔ),存儲(chǔ)對(duì)象類型的數(shù)據(jù)(JSON 的二進(jìn)制數(shù)據(jù) BSON),這要以來,查詢很方便,其它的高級(jí)查詢,比如小于 $lt,大于等于 $gte,小于等于 $lte, 在某個(gè)范圍 $in, 不在某個(gè)范圍 $nin, 等等,都可以通過上面的方式查詢出來。

  現(xiàn)在通過 java 中的一些代碼展示通過 java 來操縱 mongo 查詢。其中包含準(zhǔn)確匹配查詢,高級(jí)查詢,在兩個(gè)時(shí)間范圍內(nèi)查詢,模糊查詢,分頁實(shí)現(xiàn)等查詢。

詳細(xì)見代碼。

try { 
 System.out.println( =========******** 測試 3 開始 **********===========*************  
 // 先獲取 mongo 庫的集合 DBCollection 對(duì)象  
 DBCollection data = (DBCollection) mongoClientService.getColectionByName( mongo 庫集合名稱  
 
 BasicDBObject query3 = new BasicDBObject(); 
 query3.put( name , Tom // 查找姓名為 Tom 
 
 // 查詢兩個(gè)時(shí)間范圍的,用 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() 方法得到查詢到的記錄數(shù)  
 
 result3.skip(10).limit(20);// 分頁,skip(): 從第幾條開始,limit(): 限制返回的條數(shù)  
 
 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 結(jié)束 **********===========*************  } catch (Exception e) { 
 e.printStackTrace(); 
 System.out.println(--------- 測試 3 異常了 ----------  }

  上面包含了很多方式的查詢的例子,主要操縱的是 DBCollection, BasicDBObject, DBCursor , BasicDBList 這四個(gè)類,僅供參考。

以上是“java 操作 mongoDB 查詢的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注丸趣 TV 行業(yè)資訊頻道!

向 AI 問一下細(xì)節(jié)

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-12-04發(fā)表,共計(jì)2131字。
轉(zhuǎn)載說明:除特殊說明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請(qǐng)注明出處。
評(píng)論(沒有評(píng)論)
主站蜘蛛池模板: 长宁县| 桐城市| 彭山县| 彩票| 怀安县| 资中县| 伊通| 庆安县| 浦东新区| 鹿邑县| 都昌县| 鱼台县| 开封县| 丰县| 岗巴县| 含山县| 海口市| 栾城县| 乐至县| 枣庄市| 正安县| 湟中县| 尤溪县| 海丰县| 茂名市| 金湖县| 瑞昌市| 平果县| 西昌市| 萝北县| 彭州市| 大厂| 高青县| 平果县| 电白县| 襄城县| 淳安县| 永昌县| 梧州市| 什邡市| 永和县|