运行查询并在Java GUI上查看结果

时间:2013-01-31 19:48:33

标签: mongodb

我正在做一个学校项目。我想创建一个用户能够在GUI上输入查询的程序。

例如,如果输入以下命令,程序应验证查询并返回结果。

db.bios.find( { name: { first: 'John', last: 'McCarthy' } } )

我想知道如何验证查询以及如何将查询传递到数据库中的一些建议。

2 个答案:

答案 0 :(得分:1)

Java MongoDB驱动程序提供JSON.parse实用程序函数来将JSON字符串解析为DBObject

import com.mongodb.util.JSON;
String json = "{ name: { first: 'John', last: 'McCarthy' } }";
DBObject query = (DBObject) JSON.parse(json);
DBObject result = db.bios.find(query);

答案 1 :(得分:0)

我建议您使用Jongo驱动程序:http://jongo.org/

我们这样使用它:

Mongo mongo = new Mongo(/*host, port*/);
DB db = mongo.getDB(dbname);
Jongo jongo = new Jongo(db);

User user = jongo.getCollection("users").findOne(" { name: { first: 'John', last: 'McCarthy' }).as(User.class);

但是如您所见,它不会验证完整请求:只有findOne()方法的参数。 Jongo被称为shell中最接近的驱动程序。

换句话说,我怀疑你的练习在Java中很容易。也许你可以在python中找到一个“shell驱动程序”,然后java与python ....

进行对话