java操作mongodb——查询数据
2017-11-06 11:15
429 查看
java操作mongodb——查询数据
通过find方法查询集合中的文档信息--------------------------------------------------------
find()
查询所有文档信息,返回FindIterable<Document>我们可以通过FindIterable的forEach方法取得document信息
MongoClient mongoClient = new MongoClient();
MongoDatabase db = mongoClient.getDatabase("test");
MongoCollection<Document> doc = db.getCollection("text");
FindIterable<Document> iter = doc.find();
iter.forEach(new Block<Document>() {
public void apply(Document _doc) {
System.out.println(_doc.toJson());
}
});
--------------------------------------------------------------------
条件查询
new Document( <field>, <value> )
field为查询字段,value为查询值,也可以通过过滤器Filters,Filters提供了一系列查询条件的静态方法
相等 — =
FindIterable<Document> iter = doc.find(new Document("name","张三"));// 或者 FindIterable<Document> iter = doc.find(new Document("age",new Document("$eq",24)));
//或者 FindIterable<Document> iter = doc.find(Filters.eq("name", "张三"));
iter.forEach(new Block<Document>() {
public void apply(Document _doc) {
System.out.println(_doc.toJson());
}
});
不等 — !=
// FindIterable<Document> iter = doc.find(new Document("age",new Document("$ne",24)));FindIterable<Document> iter = doc.find(Filters.ne("name", "张三"));
iter.forEach(new Block<Document>() {
public void apply(Document _doc) {
System.out.println(_doc.toJso
4000
n());
}
});
大于 — >
FindIterable<Document> iter = doc.find(new Document("age",new Document("$gt",22)));//或者 FindIterable<Document> iter = doc.find(Filters.gt("age",22));
iter.forEach(new Block<Document>() {
public void apply(Document _doc) {
System.out.println(_doc.toJson());
}
});
大于等于 — >=
用法同上,符号为$gte小于 — <
FindIterable<Document> iter1 = doc.find(new Document("age",new Document("$lt",22)));//或者 FindIterable<Document> iter = doc.find(Filters.lt("age",22));
iter1.forEach(new Block<Document>() {
public void apply(Document _doc) {
System.out.println(_doc.toJson());
}
});
小于等于 — <=
用法同上,符号为$lte且 — and
FindIterable<Document> iter1 = doc.find(new Document("age",20).append("name", "张三"));//或者 FindIterable<Document> iter1 = doc.find(Filters.and(Filters.eq("name", "张三"),Filters.lt("age", 30)));
iter1.forEach(new Block<Document>() {
public void apply(Document _doc) {
System.out.println(_doc.toJson());
}
});
或者 — or
List<Document> list = new ArrayList<Document>();list.add(new Document("name","张三"));
list.add(new Document("age",24));
FindIterable<Document> iter1 = doc.find(new Document("$or", list));
// FindIterable<Document> iter1 = doc.find(Filters.and(Filters.eq("name", "张三"),Filters.lt("age", 30)));
iter1.forEach(new Block<Document>() {
public void apply(Document _doc) {
System.out.println(_doc.toJson());
}
});
存在 — in
// List<String> list = new ArrayList<String>();// list.add("张三");
// list.add("李四");
// FindIterable<Document> iter = doc.find(new Document("name",new Document("$in",list)));
FindIterable<Document> iter = doc.find(Filters.in("name", "张三","李四","王五"));
iter.forEach(new Block<Document>() {
public void apply(Document _doc) {
System.out.println(_doc.toJson());
}
});
不存在 — not in
用法同上,符号为$nin排序 — sort
FindIterable<Document> iter1 = doc.find().sort(new Document("age",1).append("phone", 1));//FindIterable<Document> iter1 = doc.find().sort(Sorts.orderBy(Sorts.ascending("age"),Sorts.descending("phone")));
iter1.forEach(new Block<Document>() {
public void apply(Document _doc) {
System.out.println(_doc.toJson());
}
});
相关文章推荐
- java操作mongodb——查询数据
- java操作mongodb——查询数据
- java操作mongodb——查询数据
- Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询
- Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询
- Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询
- Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询
- mongodb- Java API 查询操作
- Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询
- Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询
- java mongodb 基础系列---查询,排序,limit,$in,$or,输出为list,创建索引,$ne 非操作
- Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询
- Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询
- MongoDB在java中的操作-添,删,查 基本数据 文件存储 可使用
- elasticsearch__2__java操作之数据搜索查询
- Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询
- Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询
- Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询
- Java操作Hbase进行建表、删表以及对数据进行增删改查,条件查询
- mongodb- Java API 查询操作