使用Java类执行像查询一样的mongoDB shell

时间:2018-12-19 10:59:32

标签: java mongodb jackson mongo-java mongo-jackson-mapper

我想使用Java类执行存储在String变量中的MongoDB shell查询。当前我正在使用以下代码。

String query="db.INSTANT.insert( { item: 'card', qty: 12 } )";
MongoClient mongo = new MongoClient("localhost",27017);
DB db = mongo.getDB("mydb");
db.eval(query);

上面的代码可以很好地插入。但是我想执行query=db.INSTANT.find({"item":"card"})之类的find语句。有什么方法可以执行此查询并打印收集集。

1 个答案:

答案 0 :(得分:0)

假设eval的功能自3.0版起已被弃用。

Java驱动程序中的帮助程序db.eval()包装了mongo eval命令,因此您可以通过这种方式评估JavaScript代码

SELECT id, groupArray(object) FROM Table GROUP BY id