1

研究プロジェクトで使用する小さなプログラムを作成しています。NetBeans で Master Detail テンプレートを使用していますが、Master によって取得された行に WHERE を追加する必要があるまでは正常に機能します。Model クラスには一連の Java @ 注釈があり、結果セット内のすべての列に対する WHERE 句を含むクエリが含まれています。例えば

@NamedQueries({ @NamedQuery(name = "Topic.findByTopicId", query = "SELECT t FROM トピック t WHERE t.topicIc = :topicId"),

それらのセット全体があります。それが私が使いたいものですが、クエリを設定する方法が見つかりません。クエリは、NetBeans が作成して凍結したため、変更できないコードで設定されています。

クエリ = java.beans.Beans.isDesignTime() ? null : entityManager.createQuery("SELECT t FROM トピック t");

NetBeans が作成する persistence.xml ファイルもあります。このファイルには、JDBC 接続情報と Model クラスの名前が含まれています。

私は Java を 15 年近く使用してきた経験がありますが、常にコマンド ラインまたはバック エンドとして使用し、GUI は使用していません。これは私のプロジェクトを進行させる手っ取り早い方法のように思えましたが、変更できない場合は、別の解決策を見つける必要があります。EntityManager が使用するクエリを変更する方法を誰か説明できますか?

4

1 に答える 1

0

Netbeans 7.2 では、次の方法でアクセスできます。[デザイン] をクリックし、デザインの要素の 1 つ (どれでも構いません) をクリックし、マウスの右キーをクリックします。ポップアップ メニューで、[コードをカスタマイズ...] を選択します。「コード カスタマイザー」という名前のダイアログが表示されます。左上で、「クエリ」を選択します。以下では、「デフォルト コード」の代わりに、「カスタム作成」を選択します。そこで、初期化コードを編集できます。

于 2012-09-24T13:53:12.010 に答える