問題タブ [spring-data-mongodb]
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.
mongodb - querydslQクラスを生成できません
この質問はしばらくここで聞かれていると思いますが、受け入れられた回答はありませんでした。私は実際にさまざまなチュートリアルを試しましたが、それらを取得できませんでした。プロジェクトがありmulti modules
maven
ます。だから私は親プロジェクトにいますdependency-management
。plugin-management
pomsは次のようになります。
私はdbmobuleにjpaとmongoの両方を別々のパッケージで持っていますが、mongodbにのみ使用query dsl
したいと思います。dbモジュールpomは次のようになります。
私はmongoエンティティにアノテーションを付けて使用spring data framework 3.1
しています。@Document
私も使っMongoRepository
ているので、クラスを生成する前に何か他のものを使うべきかどうか疑問に思っています。
読んでくれてありがとう
mongodb - Spring Data mongo Criteria を使用して JPQL から mongo にクエリを移植する
Entity
fromの一部JPA
をドキュメントに移植し、現在はクエリの一部を移植しています。JPAクエリは次のとおりです。
以下は私の試みです:
このクエリは、ゼロ サイズの配列リストを返します。次に、orNameCriteria
使用する is 句を変更し、name
変数に含まれるデータに/
接尾辞と接頭辞があることを確認しました。それもうまくいきませんでした。
mongoVue
しかし、RockMongo
クライアントからのクエリ:
データを返します。
質問 1 : spring-data-mongo でLIKE CLAUSECriteria
をどのように記述しますか?
質問 2 : or および and 句を使用する正しい方法はありますかcriteria
読んでくれてありがとう
mongodb - mongodbサブドキュメントとspring-data-mongoクエリに関する質問
私はまだ手を取り合ってmongodb
、どのように最良のエンティティをマッピングできるかを模索しています。たとえば、エンティティユーザーとエンティティアドレスを例に挙げます。one-to-many
誰かがバックグラウンドから来ているときがあるかもしれませんjpa
。ここmongoでは使用したくありませんdbref
。したがって、アドレスはSet
ユーザーのコレクションに含まれます。
私が使用していたと仮定しspring-data-mongo
ます:
質問1:ユーザーとアドレスの両方に@Document
注釈を付ける必要がありますか?それともユーザーだけですか?
質問2:ユーザーのアドレスを照会するための最良の方法は何ですか。そもそも可能ですか?今はUser
byusername
またはを取得しId
てからユーザーのアドレスを取得するためにクエリを実行しているためです。直接クエリを実行できますsub-document
か?はいの場合、spring-data-mongo
CriteriaQueryを使用してどのように実行されますか。
java - プログラムでMongoDbコンバーターを設定する
spring-data-mongodbでカスタムコンバーターを使用しようとしています。プログラムで作成したいのですが、次のエラーが発生します。
失敗するコードスニペットは次のとおりです。
そして、これが私のコンバータークラスです:
私が永続化しようとしているクラスは次のようになります。
java - MongoDb - アイドル接続タイムアウト
(MongoClientOptions) の中に、アプリケーションから MongoDB へのアイドル接続のタイムアウトを設定するオプションがありません。mongodb への接続が何時間も開いたままになっていることがわかります。これがmongodbでどのように処理されるか、mongoでアイドル接続タイムアウトを設定するオプションはありますか? http://api.mongodb.org/java/2.10.1/ (MongoClientOptions)
java - PersistenceConstructor argument variable name doesn't match instance variable name
I'm trying to persist the following object with spring-data-mongodb
version 1.1.1.RELEASE
:
I get a MappingException
when I try to read the object back from the database (see full stacktrace below)
The naming convention my group uses requires argument variable names to be prefaced by a_
and instance variable names to be prefaced by m_
. It seems like spring-data-mongodb
is making the assumption that the constructor argument variable names must match the object instance variable names.
- Why doesn't
spring-data-mongodb
use the constructor argument to instance variable mapping that I define within the constructor? - Is there another way to define this mapping such that
spring-data-mongodb
will properly construct my object, or is my only option to break the naming convention?
.
java - spring-data-mongodb を使用したオブジェクトを含むオブジェクトの永続化
以下は、質問 13832188に対するフォローアップの質問です。
spring-data-mongodb
バージョンを使用して1.1.1.RELEASE
います。すべてのメンバー変数がプリミティブ型である場合、引数の名前がおよび注釈 @PersistenceConstructor
を使用してメンバー変数の名前と正確に一致しなくても、オブジェクトを永続化できます。@Field
@Value
ただし、MappingInstantiationException
他のオブジェクトを含むオブジェクトを永続化しようとすると、エラーが発生します。私の質問:
- これはバグですか、
spring-data-mongodb
それとも何か間違っていますか? - オブジェクトを含むオブジェクトを適切に永続化するには、何を変更する必要がありますか?
.
私PrimitiveContainer
のObjectContainer
クラスは以下のとおりです。
**UPDATE: ** 興味深いことに、アノテーションの文字列を@Field
「プロパティ」以外のものに変更するか、@Field
アノテーションを完全に削除すると、 ObjectContainer
m_property
spring-data-mongo-db が永続化されたクラスをプロパティに再インスタンス化できるようになりますObjectContainer
。なぜこれが機能するのかわかりません。誰にもアイデアはありますか?
mongodb - mongodb コレクションはドキュメントなしで作成されます
したがって、私の問題は、一時データを含むことを意図した生産データベースでのコレクションの自動作成です(ただし、論理的には、この一時ドキュメントで満たされることはありません)。それはなぜですか、どうすればこの動作を回避できますか?
たとえば、より正式な説明として、2 つのデータベースと、それらに含まれるコレクションがあります。
と
しかし、データの保存を開始すると、Spring が自動的に作成します
記録のために:私はすでに1.1.1.RELEASEを使用しています。この動作が繰り返される小さなテストケースを作成しました。両方のドキュメント (MyDocOne と MyDocTwo) には、カスタム フィールドに @Indexed 注釈が含まれており、オブジェクト型のフィールドも含まれています。したがって、エンティティを作成するとmyDocOne and myDocTwo
-設定myDocTwo.obj = myDocOne
して永続化myDocTwo
-春にコレクションmyDocOne
が作成されtemplate2
ます...これは少し混乱します-次のコードがより良い概要を提供することを願っています.
およびドキュメント:
java - spring-data-mongodb を使用したプリミティブ配列を含むオブジェクトの永続化
spring-data-mongodb
バージョンを使用して1.1.1.RELEASE
います。すべてのメンバー変数がプリミティブ型である場合、引数の名前がおよび注釈 @PersistenceConstructor
を使用してメンバー変数の名前と正確に一致しなくても、オブジェクトを永続化できます。@Field("foo")
@Value("#root.foo")
ただし、MappingInstantiationException
プリミティブ配列を含むオブジェクトを永続化しようとすると、(コンストラクターの不正な引数) が返されます。これは、プリミティブ配列にプリミティブまたはオブジェクトが含まれているかどうかに関係なく当てはまります。これはバグですか、spring-data-mongodb
それとも何か間違っていますか?
junit
およびに依存する以下の 3 つの単体テストを含めましたspring-data-mongodb
。テストでは、次の 3 つのことが示されます。
- オブジェクトのコレクションを含むオブジェクトの永続化は期待どおりに機能します
- プリミティブの配列を含むオブジェクトの永続化が期待どおりに機能しない
- オブジェクトの配列を含むオブジェクトの永続化が期待どおりに機能しない
.
私が取得した例外のスタック トレースも以下に示します。
mongodb - フェッチ中にコレクション内のドキュメントを並べ替える
私はMongoDBにresourceというコレクションを持っています。次のドキュメントがあります。
Javaコードでは、次のようにリストします。
IDでソートされたこれらのドキュメントを取得するにはどうすればよいですか?