Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

クラス・クエリの実行

システムは、Caché クラスのクラス・クエリごとにメソッドを自動的に生成して、Java プロジェクションに追加します。Caché クエリ名の前に “query_” が付いたものが、メソッド名になります。Java メソッドは、タイプ com.intersys.objects.CacheQuery のオブジェクトを返します。

例えば、Caché Contact クラスに、RetrieveByContactType という名前のクラス・クエリが含まれているとします。Caché では、以下のシグニチャを持つメソッドを Java プロジェクションに追加します。


public static CacheQuery query_RetrieveByContactType (Database db) 
throws CacheException

CacheQuery execute メソッドを使用して、クエリを実行します。以下の Java メソッドは、Java プロジェクションを使用して RetrieveByContactType クエリを実行します。このメソッドでは、type を入力パラメータ値としてクエリに渡します。


public class BindingExamples {
   public static void displayContactsByType(Database db, String type)
   throws CacheException, SQLException{
      CacheQuery query = Contact.query_RetrieveByContactType(db);
      java.sql.ResultSet rs=query.execute(type);
      System.out.println(type + " Contacts");
      while (rs.next()){
         System.out.println(rs.getString(1));
      }
   }
}
Note:

Caché クラスのクエリを Java に投影するには、そのクエリに SqlProc キーワードを記述する必要があります。

com.intersys.classes パッケージには ResultSet クラスが含まれていますが、このクラスは使用しないでください。

com.intersys.classes がソース・ファイルにインポートされた場合に正確に認識されるように、java.sql.ResultSet の完全修飾名を使用する必要があります。

FeedbackOpens in a new tab