0

非常に簡単な質問です。以下でこれをどのように行うのでしょうか。

> db.blog.posts.findOne()
{
"_id" : ObjectId("4b253b067525f35f94b60a31"),
"title" : "A Blog Post",
"content" : "...",
"author" : {
    "name" : "joe",
    "email" : "joe@example.com"
     }
}

私はJavascriptで答えが次のようになっているのを見ました:

> db.blog.posts.update({"author.name" : "joe"}, {"$set" : {"author.name" : "joe schmoe"}})

しかし、Javaでそれをどのように行うのでしょうか。

非常に深いレベルの値を変更する必要がある場合、このように使用する必要がありますか?のように: "person.abc.xyz.name.address"?

4

1 に答える 1

1

ドット表記を使用してネストされたドキュメントにアクセスすると、Javaドライバーで完全に機能します。このStackOverflowの答えを見てください:

MongoDBネストされたドキュメントの検索

Javaドライバーの場合、基本的な考え方は、JavascriptオブジェクトをBasicDBObjectのインスタンスに置き換えることです。

更新するためのもう1つの優れたリファレンスは次のとおりです。

そのjavaドライバーでのMongoDbの$set相当

于 2012-09-04T15:34:54.633 に答える