0
我有一個字符串與聚合json查詢(從文件加載)爲mongodb。在robomongo中,它運行良好。因此,在robomongo,我有:如何在字符串中使用json執行聚合mongo查詢?
db.getCollection('Odds').aggregate(
[
{
"$lookup": {
"from": "...",
"localField": "...",
"foreignField": "...",
"as": "..."
}
},
{ "$unwind": "$..." },
{
"$redact": {
... etc ...
}
}
]
)
JSON文件是一樣的,但與第一和去除,使得它的JSON的最後一行。當我用Java加載它時,它解析正確。解析的結果恰好是一個「BasicDBList」:
String query = "..."; // read from file
BasicDBList q = (BasicDBList) JSON.parse(query);
現在,我想這傳遞給聚合函數,但它不工作:
new MongoClient().getDatabase("db").getCollection("coll").aggregate(q);
這條線給出:
The method aggregate(List<? extends Bson>) in the type MongoCollection<Document> is not applicable for the arguments (BasicDBList)
有沒有辦法轉換類型?我應該用另一種方式來做嗎?