ts.query
インタフェース Query

既知の実装クラスの一覧:
DefaultQuery

public interface Query

クエリを実行するクラスのインターフェイス。
指定されたQueryConnectionオブジェクトが示す接続先に対して、QueryResourceオブジェクトと入力パラメータ・マップから作成した実行内容を 実行する。 クエリの実行結果はQueryResultオブジェクトを作成し、それに格納されて 返される。 executeSet(String[], Map)など、複数のクエリを実行 するメソッドは、各クエリの結果であるQueryResultオブジェクトを QueryResultListオブジェクトに格納して返される。 なお、このQueryResultオブジェクトは、そのクエリが属するQueryTransactionオブジェクトにも登録され、クエリの実行履歴として取得する ことができる。

クエリを実行する手順のイメージは以下のようになる:

     tran : QueryTransaction
     connAFactory, connBFactory : QueryConnectionFactory
     resA0, resA1, resB0 : QueryResource
     inputMap : Map

     tran.addConnectionFactory("ConnA", connAFactory);
     tran.addConnectionFactory("ConnB", connBFactory);
     ...

     try {
       trans.begin();

       QueryConnection connA = tran.getConnection("ConnA");
       Query queryA0 = connA.getQuery(resA0);
       QueryResult rsltA00 = queryA0.execute("qidA00", inputMap);
       QueryResult rsltA01 = queryA0.execute("qidA01", inputMap);
       ...

       Query queryA1 = connA.getQuery(resA1);
       QueryResultList rsltLstA1 = queryA1.executeSet(
         new String[]{ "qidA10", "qidA11" }, inputMap);
       QueryResult rsltA10 = rsltLst.getResultAt(0);
       QueryResult rsltA11 = rsltLst.getResultAt(1);
       ...

       QueryConnection connB = tran.getConnection("ConnB");
       Query queryB0 = connB.getQuery(resB0);
       QueryResultList rsltB0 = queryB0.executeAll(inputMap);
       QueryResult rsltB00 = rsltLst.getResultAt(0);
       QueryResult rsltB01 = rsltLst.getResultAt(1);
       QueryResult rsltB02 = rsltLst.getResultAt(2);
       ...

       tran.commit();
     }
     catch (Exception e) {
       tran.rollback();
     }
     finally {
       tran.end();
     }

     QueryResultLst rsltHistory = trans.getResults();

     QueryResult rslt0 = rsltHistory.getResultAt(0);
     QueryResult rslt1 = rsltHistory.getResultAt(1);
     Table table0 = rslt0.getResultTable();
     ...

     QueryResult rsltA01 = rsltHistory.getFirstResult("qidA01");
     int resultCount = rsltA01.getResultCount();
     ...
 

バージョン:
$Id: Query.java,v 1.8 2011-09-18 16:15:16 tayu Exp $
作成者:
佐藤隆之

入れ子のクラスの概要
static class Query.Error
          このクラスで発生しうるエラーを示す列挙型。
 
メソッドの概要
 QueryResult execute(java.lang.String queryId, java.util.Map<java.lang.String,java.lang.Object> inputMap)
          このオブジェクトが保持するクエリの中から、指定されたクエリIDに対する1つの クエリを実行する。
 QueryResultList executeAll(java.util.Map<java.lang.String,java.lang.Object> inputMap)
          このオブジェクトが保持する全てのクエリを順番に実行する。
 QueryResultList executeSet(java.util.List<java.lang.String> qidLst, java.util.Map<java.lang.String,java.lang.Object> inputMap)
          このオブジェクトが保持するクエリの中から、指定されたリスト内のクエリIDに 対する複数のクエリを順番に実行する。
 QueryResultList executeSet(java.lang.String[] qidArr, java.util.Map<java.lang.String,java.lang.Object> inputMap)
          このオブジェクトが保持するクエリの中から、指定された配列内のクエリIDに 対する複数のクエリを順番に実行する。
 

メソッドの詳細

execute

QueryResult execute(java.lang.String queryId,
                    java.util.Map<java.lang.String,java.lang.Object> inputMap)
                    throws ts.util.ReasonedException
このオブジェクトが保持するクエリの中から、指定されたクエリIDに対する1つの クエリを実行する。

パラメータ:
queryId - クエリID。
inputMap - 入力パラメータを格納したマップ。
例外:
ts.util.ReasonedException - クエリの実行中に例外が発生した場合。

executeSet

QueryResultList executeSet(java.lang.String[] qidArr,
                           java.util.Map<java.lang.String,java.lang.Object> inputMap)
                           throws ts.util.ReasonedException
このオブジェクトが保持するクエリの中から、指定された配列内のクエリIDに 対する複数のクエリを順番に実行する。

パラメータ:
qidArr - クエリIDの配列。
inputMap - 入力パラメータを格納したマップ。
例外:
ts.util.ReasonedException - クエリの実行中に例外が発生した場合。

executeSet

QueryResultList executeSet(java.util.List<java.lang.String> qidLst,
                           java.util.Map<java.lang.String,java.lang.Object> inputMap)
                           throws ts.util.ReasonedException
このオブジェクトが保持するクエリの中から、指定されたリスト内のクエリIDに 対する複数のクエリを順番に実行する。

パラメータ:
qidLst - クエリIDのリスト。
inputMap - 入力パラメータを格納したマップ。
例外:
ts.util.ReasonedException - クエリの実行中に例外が発生した場合。

executeAll

QueryResultList executeAll(java.util.Map<java.lang.String,java.lang.Object> inputMap)
                           throws ts.util.ReasonedException
このオブジェクトが保持する全てのクエリを順番に実行する。

パラメータ:
inputMap - 入力パラメータを格納したマップ。
例外:
ts.util.ReasonedException - クエリの実行中に例外が発生した場合。


Copyright (C) SATOH Takayuki All Rights Reserved.