spring mongodb查询

来源:互联网 发布:淘宝客淘口令怎么设置 编辑:程序博客网 时间:2024/04/30 18:59

原始查询中,and,or,in,nin后跟数组

not,lt,gt后跟文档

dbobject代表一个文档

dbobject代表文档中的一个逗号

list中用来存放集合(或者使用querybuilder来代替list)

dbobject代表bson

//db.source.find({"type":{"$lte":3,"$gte":2}})public List<Source> getSource2(){BasicDBObject dbo = new BasicDBObject();dbo.put("$gte",2);dbo.put("$lte",3);Query query = new BasicQuery(new BasicDBObject("type",dbo));return mongoTemplate.find(query, Source.class);}//db.source.find({"diff":2,"type":3})public List<Source> getSource3(){BasicDBObject dbo = new BasicDBObject();dbo.put("type", 3);dbo.put("diff", 2);Query query = new BasicQuery(dbo);return mongoTemplate.find(query, Source.class);}//db.source.find({"$and":[{"diff":2},{"type":3}]})public List<Source> getSource7(){QueryBuilder queryBuilder = new QueryBuilder();queryBuilder.and(new BasicDBObject("diff",2),new BasicDBObject("type",3));Query query = new BasicQuery(queryBuilder.get());return mongoTemplate.find(query, Source.class);}//不使用builderquery来创建查询连接public List<Source> getSource77(){List<DBObject> list = new ArrayList<DBObject>();list.add(new BasicDBObject("diff", 2));list.add(new BasicDBObject("type", 3));Query query = new BasicQuery(new BasicDBObject("$and",list));return mongoTemplate.find(query, Source.class);}//db.source.find({"$and":[{"diff":{"$gte":2}},{"diff":{"$lte":3}}]})public List<Source> getSource5(){QueryBuilder queryBuilder = new QueryBuilder();queryBuilder.and(new BasicDBObject("diff",new BasicDBObject("$gte",2)),new BasicDBObject("diff",new BasicDBObject("$lte",3)));Query query = new BasicQuery(queryBuilder.get());return mongoTemplate.find(query, Source.class);}//db.source.find({"type":{$in:[2,3]}})public List<Source> getSource6(){List<Integer> list = new ArrayList<Integer>();list.add(2);list.add(3);BasicDBObject dbo = new BasicDBObject();dbo.put("type", new BasicDBObject("$in",list));Query query = new BasicQuery(dbo);return mongoTemplate.find(query, Source.class);}



0 0