0

2つの引数を文字列として受け取る関数を備えたクライアント向けアプリケーションがあります。arg1はコレクション、arg 2は関数、arg 2はオブジェクトのハッシュです

だからJavaで私は持っています

foo(String collection, String object):

/* そして、mongoDB ドライバーからの db オブジェクトを持っています。挿入したいコレクションは "users" です */

MongoClient mongoClient = new MongoClient( "localhost" );
DB db = mongoClient.getDB("mydb");

今、ここが私が困っているところです

db.runCommand({insert : collection (? can i do this),
               ????}) <- I dont know how to right this and append the object

事前に一連の検索を行い、見つかった多くの例には既に定義済みのコレクションがありましたが、これを抽象化する必要があります。

どんな助けでも非常に役に立ちます、ありがとう。

アップデート:

私は coll.find() Java メソッドを探していません。シェルが提供するものよりも優れた出力で誰かの mongoDB データを視覚化したいと考えています。だから私は非常に一般的な db.runco​​mmand(string) を探しています。これは、文字列として渡されるものは何でも insert/find/findone() を受け取ることができます。runco​​mmand を使用してコレクション名を取得できるので、基本的なレベルでは理解できますが、特定のコマンドをユーザー定義のコレクションに適用することはできません。

4

2 に答える 2

1

サンプル:

DBCollection coll = db.getCollection("collection");

/* {
   "name" : "MongoDB",
   "type" : "database",
   "count" : 1,
   "info" : {
               x : 203,
               y : 102
             }
} */

BasicDBObject doc = new BasicDBObject("name", "MongoDB").
                              append("type", "database").
                              append("count", 1).
                              append("info", new BasicDBObject("x", 203).append("y", 102));

coll.insert(doc);
于 2013-07-17T21:26:41.547 に答える