ホームページ  >  記事  >  Java  >  Java で mongoDB クエリを操作するためのサンプル コードの共有

Java で mongoDB クエリを操作するためのサンプル コードの共有

黄舟
黄舟オリジナル
2017-09-25 10:19:121671ブラウズ

この記事では、主に Java 操作 mongo クエリの詳細な例に関する関連情報を紹介します。この記事が必要な方の参考になれば幸いです。

Java 操作 mongo クエリの詳細な例

MongoDB。は、分散ファイル ストレージに基づくデータベースです。 C++ 言語で書かれています。 WEB アプリケーションにスケーラブルで高性能なデータ ストレージ ソリューションを提供するように設計されています。

MongoDB は、リレーショナル データベースと非リレーショナル データベースの中間の製品であり、非リレーショナル データベースの中で最も機能が豊富で、最もリレーショナル データベースに似ています。サポートされるデータ構造は非常に緩やかで、json に似た bson 形式であるため、より複雑なデータ型を格納できます。 Mongo の最大の特徴は、サポートするクエリ言語が非常に強力であることです。その構文はオブジェクト指向のクエリ言語に似ており、リレーショナル データベースの単一テーブル クエリと同様のほとんどの機能を実装できます。データの。


{' key' : ' value' } と同様に、視覚化ツールでクエリを実行すると非常に便利です。たとえば、特定のフィールドの値がより大きい場合、この種のクエリも高度なクエリに似ています。 5、{' key' : { $gt : 5} } をクエリできます。これは、オブジェクト型データ (JSON のバイナリ データ BSON) を格納する Monggo のコレクション指向ストレージのおかげで、それ以来、クエリは非常に便利です。その他の高度なクエリ ($lt 未満、$gte より大きい、$lte 以下、特定の範囲 $in 内、特定の範囲 $nin 内ではないなど) はすべて、上記の方法。


次に、Java を介して mongo クエリを操作するための Java のコードをいくつか示します。これには、完全一致クエリ、高度なクエリ、2 つの時間範囲内のクエリ、あいまいクエリ、ページング実装、およびその他のクエリが含まれます。


詳細についてはコードを参照してください。


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 の 4 つのクラスで動作する多くの種類のクエリの例が含まれていますが、参照のみを目的としています。

以上がJava で mongoDB クエリを操作するためのサンプル コードの共有の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。