問題タブ [criteriaquery]

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 投票する
0 に答える
1280 参照

java - 抽象クラスのサブクラス プロパティでフィルタリングする JPA CriteriaQuery を取得する方法

ビルダー .treat() メソッドを使用してAbstractAddressエンティティをそのサブクラスにキャストする JPA クエリを取得できません。AddressStd

バックグラウンド

JPA 2.1 (Hibernate 5.0.2 FINAL を使用) を使用しCustomerて、0:n の連絡先があり、それぞれContactAbstractAddressサブタイプAddressStdまたはAddressPOB(PO ボックス) があるレガシーデータベースをマップしました。Contact には追加のプロパティがありますが、簡単にするために以下には示していません。

ドメイン モデル

JPA クエリ

ビルド クエリはAbstractAddressプロパティ ( ) を取得するために機能しますが、次のようなステートメントとして、( ) と( )city, postcode, country, language, isActiveのサブクラス プロパティをそれぞれ取得することはできません。AddressStdhouseNo, streetAddressPOBpoBoxNo

実行時例外をスローします

以前にビルダー .treat() メソッドを使用して型をキャストしましたが、正常に動作します。しかし、この場合、 .treat() はアドレスをAddressStd.class?にキャストできません。JPAの第一人者であるあなたの中に、その理由を知っている人はいますか? どうもありがとう、DaveT.

こちらの CriteriaQuery ビルダー コードを参照してください

0 投票する
0 に答える
35 参照

java - JPA CriteriaQuery を使用して結合または関係を実装する方法

以下のように、データベースに 3 つのテーブルがあります。

そして、私のSQLクエリは次のとおりです。

JPA(Hibernate) CriteriaQuery を使用してこれを実装するにはどうすればよいですか。

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

java - CriteriaQuery を使用して "select count(*) ..." を生成する方法

「 ExampleEntity」のカウントを取得するために、次のコードを書きました。

生成された SQL: Hibernate: select count( exampleen0_.id ) as col_0_0_ from EXAMPLEENTITY exampleen0_

ただし、パフォーマンス上の理由から (Oracle 11g データベースを使用)、次の SQL を生成する必要があります。

目的のSQL:サンプルのexampleen0_からcol_0_0_としてcount(*)を選択します

JPQL クエリを作成するのは非常に簡単ですが、フィルター用に既存の多くのコードを書き直す必要があります。

CriteriaQuery を使用して "count(exampleen0_.id)" の代わりに "count(*)" を生成するにはどうすればよいですか?

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

java - JPA Criteria クエリの二重結合とハイバネート エラー with-clause

この回答https://stackoverflow.com/a/2111420/3989524に基づいて、最初に動作する SQL を作成しました。

次に、(最終的に) 同等の HQL を生成するように見える基準クエリですが、Hibernate はエラーをスローします。

org.hibernate.hql.internal.ast.QuerySyntaxException: with-clause が 2 つの異なる from-clause 要素を参照しました

エラー メッセージの HQL:

条件クエリ:

とにかく欲しいものを手に入れる方法はありますか、それとも内部の休止状態のバグを回避する方法は他にありません。

0 投票する
0 に答える
654 参照

java - Hibernate Criteria を JPA CriteriaQuery に変換する

すべてのものを1対1で書き直すことなく、Hibernate CriteriaコードをJPA Criteria Queryコードに「簡単に」変換するソリューションを探しています。Hibernate Criteria を SQL クエリに変換し、それを JPA Criteria Query で再利用することはできますか? 他のソリューションは大歓迎です。

具体的に言うと、Hibernate Criteria オブジェクトを返す複雑なメソッドがあります。JPA のみを使用する予定ですが、この方法は敏感すぎて、今の時間ではリファクタリングできません。したがって、この Criteria を JPA Criteria Query で再利用できるように「変換」する効率的な方法を見つけるとよいでしょう。