>  기사  >  Java  >  Java에서 mongoDB 쿼리를 작동하기 위한 샘플 코드 공유

Java에서 mongoDB 쿼리를 작동하기 위한 샘플 코드 공유

黄舟
黄舟원래의
2017-09-25 10:19:121666검색

이 글은 주로 자바 연산 몽고 쿼리의 상세한 예시에 대한 정보를 소개합니다. 도움이 필요한 친구들은

자바 연산 몽고 쿼리의 상세 예시

서문:

MongoDB를 참고하세요. 분산 파일 스토리지 기반의 데이터베이스입니다. C++ 언어로 작성되었습니다. 웹 애플리케이션을 위한 확장 가능한 고성능 데이터 스토리지 솔루션을 제공하도록 설계되었습니다.

MongoDB는 관계형 데이터베이스와 비관계형 데이터베이스 사이의 제품으로, 비관계형 데이터베이스 중에서 기능이 가장 풍부하고 관계형 데이터베이스와 가장 유사합니다. 지원하는 데이터 구조는 매우 느슨하고 json과 유사한 bson 형식이므로 더 복잡한 데이터 유형을 저장할 수 있습니다. Mongo의 가장 큰 특징은 지원하는 쿼리 언어가 매우 강력하다는 것입니다. 구문이 객체 지향 쿼리 언어와 다소 유사하며 관계형 데이터베이스의 단일 테이블 쿼리와 유사한 대부분의 기능을 구현할 수 있으며 인덱싱도 지원합니다. 데이터.

{' key' : ' value' }와 유사하게 시각화 도구에서 쿼리하는 것이 매우 편리합니다. 예를 들어 특정 필드의 값이 다음보다 큰 경우. 5, 우리는 {' key' : { $gt : 5} } 를 쿼리할 수 있습니다. 이는 객체 유형 데이터(JSON의 바이너리 데이터 BSON)를 저장하는 mongo의 컬렉션 지향 저장소 덕분입니다. 이후 쿼리가 매우 편리해졌습니다. $lt보다 작음, $gte보다 큼, $lte보다 작거나 같음, 특정 범위 $in 내, 특정 범위 $nin 내에 있지 않음 등과 같은 기타 고급 쿼리는 모두 다음을 통해 쿼리할 수 있습니다. 위의 방법.

이제 Java를 통해 mongo 쿼리를 조작하기 위한 Java의 일부 코드를 보여주세요. 여기에는 정확한 일치 쿼리, 고급 쿼리, 두 시간 범위 내의 쿼리, 퍼지 쿼리, 페이징 구현 및 기타 쿼리가 포함됩니다.

자세한 내용은 코드를 참조하세요.


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 쿼리를 작동하기 위한 샘플 코드 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.