gpt4 book ai didi

java - 需要在 Java 中使用 eclipse 获取 MongoDB 中的一个字段

转载 作者:行者123 更新时间:2023-11-30 08:25:42 25 4
gpt4 key购买 nike

我正在尝试获取 mongo 中的特定字段。现在这个字段包含在许多对象中,所以我们可能需要运行一个数组,我还需要将它缩小到一些特定的文本。我能够获得所有领域,但我似乎无法获得一个领域。

    MongoClient mongo = new MongoClient(PAH TO MONGO);

System.out.println(mongo.getDatabaseNames());
DB db= mongo.getDB(DB NAME);
DBCollection coll = db.getCollection(COLLECTION NAME);
BasicDBObject whereQuery = new BasicDBObject();

DBCursor cursor= coll.find(whereQuery);

while (cursor.hasNext())
{
System.out.println(cursor.next());
}

也试过了

    MongoClient mongo = new MongoClient(PAH TO MONGO);

System.out.println(mongo.getDatabaseNames());
DB db= mongo.getDB(DB NAME);
DBCollection coll = db.getCollection(COLLECTION NAME);
BasicDBObject searchQuery= new BasicDBObject();
//FIELD NAME
searchQuery.getString("Url");
DBCursor cursor= coll.find(searchQuery);

while (cursor.hasNext())
{
System.out.println(cursor.next());
}

我还需要用一些部分文本过滤数据让我们说一个带有 http://yahoo.com/@#%##$ 的 url 字段,但这是一个部分 url,所以我需要确保我得到 yahoo.com 及其后面的任何内容,因为除了 yahoo.com 之外还有其他数据。

我需要这个的原因是因为我需要将从 mongo 获得的 url 存入一个变量,然后在循环中使用该变量来运行每个 url 并运行自动化测试。

如果有人能帮助我,那就太好了。

谢谢,

美人鱼

最佳答案

cursor.next() 语句返回一个DBObject 实例。因此,您可以将其分配给一个变量,然后调用 DBObject#get(String key)方法。

此外,如果您想要一个 MongoDB 特定的 bson 对象,则可能需要转换为 BasicDBObject 类。

例如:

while (cursor.hasNext()) { 
BasicDBObject next = (BasicDBObject) cursor.next();
Object someField = next.get("someField");
//more stuff
}

关于java - 需要在 Java 中使用 eclipse 获取 MongoDB 中的一个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22074035/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com