問題タブ [mongodb-java]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
playframework - モルフィア モデルでの所有オブジェクト ID の永続化
私は2つのクラスを持っています
ムービーで次のメソッドを定義すると:
次に、Session のメソッド:
Movie オブジェクトと Session オブジェクトを保存できますが、Movie.findById を使用してムービーを取得しようとすると、スタック トレース (以下) が表示されます。
ただし、セッションで movieId フィールドを設定しないと、所有しているムービーを正常に取得できます。
私が間違っているかもしれないアイデアはありますか?
mongodb - SpringDataを介してMongoDBに接続する際の例外
私はいくつかのテストプログラムに取り組んでいます。http://static.springsource.org/spring-data/data-document/docs/1.0.0.M2/reference/html/#mongoSpringData
MongoDB
に記載されているのと同じように実行しました。.core。しかし、それは例外を示しています:
しかし、MongoApp.javaを実行した後、次の例外が発生します。
java - gwt + mongo(morphia)= IncompatibleClassChangeError
Gwt-> RPC-> MongoDB(モルヒネ)
MyCodeImpl.getDataSource():
42行目:Mongo db = new Mongo( "localhost");
GWTがなくても問題なく動作します。なぜGWTで動作しないのですか?com.mongodb.DbDecoderに問題があるようです...何か提案はありますか?
spring - $set更新を行うときにSpring MongoDBカスタムコンバーターは使用されませんか?
簡単な例の前の短い要約:
- 私のカスタムコンバーターを使用するという意味で、新しいドキュメントの挿入は問題ありません
- カスタムコンバーターを使用しないという意味で、既存のドキュメントの更新は問題ありません
私の開発者:
これが独自のコンバーターを持つ私のクラスです
コンバーターは次のとおりです。
myDomain には がありList<MyClass<?>> myClasses
、カスタム コンバーターが使用されているため、これは正常に機能します。
デバッグ出力から見ることができるもの:
そして、私の db.myCollection.find().pretty(); からの結果があります。:
挿入操作はすべて問題ありません...
しかし、次のように $set を既存のドキュメントに更新すると:
デバッグ出力は同じままです:
しかし、結果はカスタム コンバーターを使用せず、"_class" 属性を使用しない場合のようになります。
私の現在の結論は次のとおりです。
- 新しいドキュメントを挿入する場合、カスタム コンバーターは正常に動作します
- ただし、更新については、カスタムコンバーターが呼び出されているように見えますが(デバッグ出力があります)、実際の更新を行うためにデフォルトの MappingMongoConverter を使用しているようです。
何か足りないのですか?あなたの考えを共有してください..
java - クラス継承のための Spring Data MongoDb
MongoDb の 1 つのコレクションに異なるデータを格納し、Spring データ Bean に適切なフィールドを設定したいと考えています。
申し訳ありませんが、詳細をスキップしました。
親ビーン:
チャイルズ:
したがって、mongoには次のドキュメントがあります
データを取得すると、問題ありません。しかし、B の CrudRepository からsaveメソッドを呼び出すと、すべてのデータが書き換えられ、C が失われます。
次のように、増分更新を使用してカスタム保存方法を作成するための良いオプションを 1 つだけ知っています。
しかし反省あり。
他にアイデアはありますか?
前もって感謝します。
mongodb - mongoDBから要素値を取得する方法は?
次のコレクションがあるとします。
id1、name、id、label、またはその他の要素を取得するにはどうすればよいですか?
_idフィールド、DATA(完全な配列)を取得できますが、DATAの内部要素は取得できません。
java - MongoDBオブジェクトインスタンス
データベースの使用経験はありませんが、作成中のアプリで使用する必要があるため、MongoDBを選択します。
これですべてが機能していますが、データベースにリクエストを送信するたびに新しいMongoオブジェクトを作成しており、それが間違っていることを理解しています。
だから私はこれを行う正しい方法を尋ねて学びたいのです、私は次のようなコードをクラスに持っていますMongoDbConnnection
:
そのため、クエリを実行する必要があるたびに、実行してMongo m = MongoDbConnnection.getMongo();
先に進みます。
これは正しいです?
また、接続を閉じるタイミングについても混乱しています。拡張HttpServlet
してGETに応答する別のクラスがあるため、誰かがそのURLを要求するたびに、データベースにクエリを実行して情報を返す必要があります。あるリクエストに応答した直後に閉じた場合、その直後に他の人が再度リクエストした場合はどうなりますか。次に、新しいMongoオブジェクトを再度作成する必要がありますか?
言い換えると、Mongoインスタンスが接続ポーリングを維持していることを知っているので、m.close()を呼び出すと、使用した接続を置き換えるだけですか、それともオブジェクトm
をnullに設定しますか?
java - @DbRef アノテーションで GridFSFile を参照する方法 (Spring Data mongodb)
私は春の@Documentを持っていますobject Profile
私はそれのように GridFSFile を参照したいと思います:
ファイルは、別のコレクション タイプの GridFS に書き込まれます。
私はいつもjava.lang.StackOverflowError
私が設定したときを持っていますprofile.setFile(file);
私が興味を持っているファイルを参照するアイデアを持っている人がいるかどうかわかりません
ありがとう、ザビエル
mongodb - mongo がインストールされていないマシンで Mongo mapreduce ジョブを実行する
Java プログラムから実行する必要がある一連の mapreduce ジョブがあります。今、私は Java Process 呼び出しを介してそれらを実行しています
Mongo を搭載していないマシンでこれらの mapreduce taks を実行する方法はありますか。mongo Java ドライバーはそのような機能をサポートしていますか?
ありがとう!
mongodb - 保存時にmongoがスペースをトリミングするのはなぜですか?
ドキュメントをコレクションに保存するときに、MongoDB が複数のスペースを (1 つのスペースに) まとめていることに気付きました。先頭と末尾のスペースだけでなく、スペースの任意のシーケンス - すべての空白ではなくスペースのみ (スペースとタブでのみテスト済み)。これは、Java ドライバーと対話型の mongo シェルを使用しているときに発生するため、データストア自体の「機能」であると推測しています。
確かに、私は自分の値に余計な空白を入れるのが好きではなく、それらを取り除く過程でこれを発見しました。ただし、この動作は奇妙に思えます。なぜなら、データストアは通常、基になるストレージの制約に準拠するために最低限必要なものを超えてデータを「クック」またはその他の方法で変更することを控えることが期待されているためです。そうしないと (ユーザー/開発者に宣言されていない場合)、データや精度が失われる可能性があります。また、スペースを先頭と末尾で完全にトリミングするのではなく、スペースを折りたたむのはなぜですか?
この機能を誤って有効にしましたか、それともデフォルトで有効になっていますか? JIRAで何も見つかりませんでした。これは私にはバグのように思えますが、もしかしたら私が特別なのかもしれません。MongoDB バージョン 2.0.2