MongoDB_Java连接Mongo 限制结果集数量

使用Java代码连接MongoDB数据库 , 查询数据库表 , 并限制返回查询数量.

源码 : Java连接Mongo限制查询数量

使用到的jar包


mongo数据库中的数据集



代码:

import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.DBCursor;
import com.mongodb.MongoClient;

import java.net.UnknownHostException;

/**
 * 使用Java限制结果集数量.
 */
public class JavaFindLimit {

    public static void main(String[] args) {
        try {

            MongoClient mongoClient = new MongoClient("localhost", 27017);
            DB db = mongoClient.getDB("test");
            DBCollection dbCollection = db.getCollection("user");

            //limitResults(dbCollection, 1);
            //limitResults(dbCollection, 2);
            limitResults(dbCollection, 10);

        } catch (UnknownHostException e) {
            e.printStackTrace();
        }
    }


    public static void limitResults(DBCollection collection, Integer limit) {
        BasicDBObject query = new BasicDBObject("age", new BasicDBObject("$lt", 100));
        DBCursor dbCursor = collection.find(query);
        dbCursor.limit(limit);
        while (dbCursor.hasNext()) {
            System.out.println(dbCursor.next());
        }
    }

}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java 中使用 MongoDB 进行条件查询可以使用 `com.mongodb.client.MongoCollection` 的 `find` 方法结合 `com.mongodb.client.model.Filters` 类提供的过滤条件来实现。 以下是一个简单的例子,假设我们有一个名为 `users` 的合,其中包含了 `name` 和 `age` 两个字段: ```java import com.mongodb.client.MongoClients; import com.mongodb.client.MongoCollection; import com.mongodb.client.MongoDatabase; import com.mongodb.client.model.Filters; import com.mongodb.client.model.Sorts; import org.bson.Document; import java.util.Arrays; public class MongoDBExample { public static void main(String[] args) { // 创建 MongoDB 客户端 MongoClient mongoClient = MongoClients.create("mongodb://localhost:27017"); // 获取数据库 MongoDatabase database = mongoClient.getDatabase("test"); // 获取MongoCollection<Document> collection = database.getCollection("users"); // 查询所有文档 collection.find().forEach((Consumer<Document>) document -> System.out.println(document.toJson())); // 按条件查询文档 Document query = new Document(); query.append("age", new Document("$gte", 18)); // 年龄大于等于 18 岁 query.append("name", new Document("$in", Arrays.asList("Alice", "Bob"))); // 名字为 Alice 或 Bob collection.find(query).forEach((Consumer<Document>) document -> System.out.println(document.toJson())); } } ``` 上述代码中,我们使用 `Filters` 类提供的 `$gte` 和 `$in` 条件,查询年龄大于等于 18 岁且名字为 Alice 或 Bob 的文档。 更多的过滤条件可以参考 MongoDB 的官方文档:https://docs.mongodb.com/manual/reference/operator/query/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值