濮阳杆衣贸易有限公司

主頁 > 知識(shí)庫 > java操作mongoDB查詢的實(shí)例詳解

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

熱門標(biāo)簽:呼和浩特電銷外呼系統(tǒng)加盟 電銷機(jī)器人是什么軟件 濟(jì)南電銷機(jī)器人加盟公司 云南外呼系統(tǒng) 蘋果汽車租賃店地圖標(biāo)注 怎么投訴地圖標(biāo)注 杭州人工電銷機(jī)器人價(jià)格 廣州長安公司怎樣申請(qǐng)400電話 老虎洗衣店地圖標(biāo)注

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("=========********測(cè)試3開始**********===========*************"); 
  //先獲取mongo庫的集合DBCollection對(duì)象 
  DBCollection data = (DBCollection) mongoClientService.getColectionByName("mongo庫集合名稱"); 
   
  BasicDBObject query3 = new BasicDBObject(); 
  query3.put("name","Tom");//查找姓名為Tom 
 
  //查詢兩個(gè)時(shí)間范圍的,用map包裝一下 
  MapString, 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));//查詢r(jià)esultCode不是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("=========********測(cè)試3結(jié)束**********===========*************"); 
} catch (Exception e) { 
  e.printStackTrace(); 
  System.out.println("---------測(cè)試3異常了----------"); 
}

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

如有疑問請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

您可能感興趣的文章:
  • JAVA mongodb 聚合幾種查詢方式詳解
  • Java操作mongodb的模糊查詢和精確查詢
  • java 中mongodb的各種操作查詢的實(shí)例詳解
  • 淺談java實(shí)現(xiàn)mongoDB的多條件查詢
  • Java操作MongoDB模糊查詢和分頁查詢
  • java查詢mongodb中的objectid示例
  • java操作mongodb基礎(chǔ)(查詢 排序 輸出list)
  • Java操作MongoDB插入數(shù)據(jù)進(jìn)行模糊查詢與in查詢功能

標(biāo)簽:興安盟 自貢 雞西 泰安 無錫 玉林 遼陽 廈門

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《java操作mongoDB查詢的實(shí)例詳解》,本文關(guān)鍵詞  java,操作,mongoDB,查詢,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《java操作mongoDB查詢的實(shí)例詳解》相關(guān)的同類信息!
  • 本頁收集關(guān)于java操作mongoDB查詢的實(shí)例詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    元朗区| 拜泉县| 广西| 南康市| 宜丰县| 东方市| 阳山县| 海伦市| 昌平区| 丘北县| 双江| 临朐县| 东安县| 娱乐| 舞钢市| 丘北县| 鄯善县| 蓬莱市| 涪陵区| 华阴市| 柯坪县| 论坛| 墨竹工卡县| 上犹县| 汝阳县| 乐昌市| 郴州市| 崇仁县| 汾阳市| 若羌县| 十堰市| 莱阳市| 澳门| 新化县| 温泉县| 临澧县| 西乌| 洞口县| 德庆县| 改则县| 屯留县|