2012-03-08 7 views
0

EclipseLink式は、クエリ条件を動的に組み合わせるのに非常に便利だと分かっています。私のアプリケーションで必要なQueryHint(バッチ処理用)オプションを持たないReadAllQueryで動作する必要があります。EclipseLink式のジレンマ

一方、このヒント機能を持つJPA Queryを使用するには、EclipseLink式ツールを手放す必要があります。

EclipseLink ExpressionとQueryHintを一度に使用する方法は何ですか?

ReadAllQueryにはフェッチオプションを設定するためのいくつかの関連するメソッドがあるようですが、もしそれをgoogleすれば、リポジトリからのソースコードだけが見つかります。

答えて

1

バッチ読取りは、ここでネイティブのEclipseLink問合せフレームワークを参照して説明されています http://wiki.eclipse.org/Using_Basic_Query_API_%28ELUG%29#Using_Batch_Reading

あなたはまたEJBQueryImpl setDatabaseQuery(クエリ)メソッドを使用して実行するためのJPAクエリオブジェクトでそれを設定し、その後、クエリオブジェクトを構築することができます。これにより、後でJPA setHint APIを使用することができますが、ネイティブAPIを使用すると、より多くの制御ができ、EntityManagerでクエリを実行するためにのみ使用できます。 EJBQueryImplは、EclipseLink JPA Query実装です。したがって、unwrapメソッドを使用してコンテナで取得する必要があります。

+0

非常に助かりました、ありがとう。 – Lopakhin