問題タブ [criteria-api]

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.

0 投票する
1 に答える
756 参照

nhibernate - Criteria API の計算列でレコードを並べ替える方法は?

Criteria API を使用して以下の HQL クエリを作成するにはどうすればよいですか?

0 投票する
2 に答える
13239 参照

java - JPA Criteria API クエリでの countDistinct の使用例

次の JPQL クエリを表す方法がわかりません。

基準 API を使用します。私がしようとしているのは:

しかし、これは機能していません。私も試しました:

これはJPA2、Eclipselink用です。

0 投票する
3 に答える
14231 参照

java - Criteria API (JPA 2.0) を使用したクエリの作成

JPA 2.0 から Criteria API を使用してクエリを作成しようとしていますが、うまくいきません。

問題は、「間」条件メソッドにあります。どうすればよいかを知るためにいくつかのドキュメントを読みましたが、JPAを発見しているので、なぜそれが機能しないのかわかりません。

まず、「Transaction_」と書いたときに現れるはずの「creationDate」が見えません。

実行時にメタモデルが生成されると読んだので、おそらく正常だと思ったので、「Foo_.value」の代わりに「Foo_.getDeclaredSingularAttribute("value")」を使用しようとしましたが、それでもまったく機能しません。

これが私のコードです:

誰かがこれを理解するのを手伝ってくれますか? ありがとう。

EDIT:ここにトランザクションソースがあります(データベースからNetbeansによって自動的に生成されたため、ほとんど何もありません)

0 投票する
2 に答える
4803 参照

java - 要求されたエンティティの子エンティティの情報を使用して、HibernateCriteriaクエリの結果を並べ替える

PersonとBookの2つのエンティティがあります。特定の本のインスタンスが1つだけシステムに保存されます(本が追加されると、アプリケーションは、データベースに新しい行を追加する前に、その本がすでに見つかっているかどうかを確認します)。エンティティの関連するソースコードは以下にあります:

私の問題は、特定の人が所有する本のいくつかを所有している人を見つけたいということです。返される人のリストは、次のロジックを使用して並べ替える必要があります。同じ本のほとんどを所有している人はリストの最初にあり、リストの2番目の人は最初の人ほど多くの本を所有していません。第三者。このクエリを実行するメソッドのコードを以下に追加します。

私の質問は、Hibernateを使用してこれを実行できるかどうかです。もしそうなら、それはどのように行うことができますか?コンパレータを実装できることはわかっていますが、この問題を解決するにはHibernateを使用したいと思います。

SQLを使用する場合、次のSQLクエリを使用して必要な結果を得ることができます。

私はこれをCriteriaクエリに変換する方法を見つけようとしてきました。Projectionsを使用しようとしていますが、結果をPersonオブジェクトにマップして戻すことができないようです。

0 投票する
4 に答える
771 参照

nhibernate - NHibernate の問題

カテゴリを共有する製品のリストを取得しようとしています。

Hibernate は間違った製品を返しません。

ここに私の基準APIメソッドがあります:

これが私のHQLメソッドです:

どちらのメソッドも、2 つの製品を返す必要がある場合に製品を返しません。

Product クラスのマッピングは次のとおりです。

最後に、Category クラスのマッピング:

何が問題なのか分かりますか?

add 行を削除すると、クエリは次のようになります。

ウォッチ ウィンドウを見ると、カテゴリが関連付けられた 5 つの製品が返されます。最初のクエリで探しているカテゴリの名前が 2 つの製品に表示されます。

したがって、行を追加すると何か問題があります: .Add(Restrictions.Eq("Name", name))

制限行を含む生成された SQL を次に示します。

NHibernate: this_.ProductId を ProductId23_1_ として、this_.RowVersion を RowVersion23_1_ として、this_.ProductName を ProductN3_23_1_ として、this_.BasePrice を BasePrice23_1_ として、this_.IsTaxable を IsTaxable23_1_ として、this_.DefaultImageFile を DefaultI6_23_1_ として、categories3_.ProductId を ProductId として、category1_.CategoryId を CategoryId として選択します。 、category1_.CategoryId を CategoryId16_0_ として、category1_.RowVersion を RowVersion16_0_ として、category1_.Name を Name16_0_ として、category1_.IsDefault を IsDefault16_0_ として、category1_.Description を Descript5_16_0_ として、category1_.ParentID を ParentID16_0_ として。 ProductId 内部結合 Categoriescategory1_ on Categories3_.CategoryId=category1_.CategoryId WHERE category1_.Name = @p0; @p0 = 'モメンタム'

0 投票する
3 に答える
4045 参照

java - Criteria APIにRestrictions.eq(true、false)のようなものはありますか?

Criterion結果を強制的にゼロ一致にするジェネリックが必要です。

のようなものRestrictions.eq(true, false)

0 投票する
7 に答える
14956 参照

java - Hibernate Criteria API - 基準の追加: 文字列はコレクションにある必要があります

エンティティオブジェクトをフォローする必要があります

ここで、uuid リストに文字列 "abc123" が含まれるすべての Foobar pojo を取得する基準クエリを作成したいと思いますが、適切な基準を作成する方法がわかりません。

0 投票する
1 に答える
393 参照

nhibernate - 元のエンティティも含めて1対多の関係の行数を取得する方法は?

2 つのエンティティがFooあり、 has-manyBarがどこにあるとします。FooBar

できれば Criteria インターフェイスのみを使用して、単一のクエリを使用して DTOのBarsperの数を効率的に合計するにはどうすればよいですか。Foo

「SetProjection」を使用してクエリから元のエンティティを取得する方法をいくつも試しましたが、うまくいきませんでした。現在の理論は、次のようなことをすることです

しかし、基準を使用すると、方法がわかりません。

0 投票する
1 に答える
2721 参照

nhibernate - CriteriaAPIを使用してNHibernateでコレクションを熱心にロードする

私は、HasManyエンティティBとエンティティCを持つエンティティAを持っています。すべてのエンティティA、B、およびCには、熱心にロードする必要があるいくつかの参照x、y、およびzがあります。

データベースからすべてのエンティティAを読み取り、基準APIを使用してBとCのコレクションを熱心にロードしたいと思います。これまでのところ、「A」の参照を熱心に取得することができます。ただし、コレクションが読み込まれると、コレクション内の参照が遅延して読み込まれます。

これが私のやり方です

Fluentを使用したエンティティAのマッピングは次のとおりです。_Bと_Cは、それぞれAのBとCのプライベートIListです。

マッピングファイルに変更を加えたくないので、エンティティA全体を熱心にロードしたいと思います。つまり、参照プロパティも熱心にロードされるBとCのリストがあるAのリストを取得する必要があります

0 投票する
4 に答える
6669 参照

java - 同じ CriteriaBuilder (JPA 2) インスタンスを使用して複数のクエリを作成できますか?

これは非常に単純な質問のように思えますが、まだ決定的な答えを見つけることができていません。基準クエリを使用してデータベースを自然にクエリするDAOクラスがあります。したがって、異なるクエリの作成に同じ CriteriaBuilder 実装を使用しても安全かどうか、またはクエリごとに新しい CriteriaBuilder インスタンスを作成する必要があるかどうかを知りたいです。次のコード例は、私がやりたいことを示しているはずです:

これをしても大丈夫ですか?