Interstage Shunsaku Data Manager アプリケーション開発ガイド - Microsoft(R) Windows(R) 2000/ Microsoft(R) Windows Server(TM) 2003 - - UNIX共通 -
目次 索引 前ページ次ページ

第2部 APIでのアプリケーション開発> 第9章 Java APIのアプリケーション開発> 9.3 Java APIの使用方法> 9.3.2 データの検索

9.3.2.5 レコードIDの取出し

レコードIDはXML文書全体の取得、データの削除、更新をする場合に使用します。レコードIDの取得はgetRecordIDメソッドを使用します。

レコードIDの取出し方法について、以下の図に示します。

[図:レコードIDの取出し方法]

■記述例

ShunConnection con = new ShunConnection();
String queryExpression = "/document/base/prefecture == '大阪'";
String returnExpression = "/document/base/name, /document/base/price";
ShunPreparedStatement pstmt = con.prepareSearch(queryExpression, returnExpression);      (1)
pstmt.setRequest(11,5);                                                                  (2)
ShunResultSet rs = pstmt.executeSearch();                                                (3)
while(rs.next()) {                                                                       (4)
  System.out.println("[レコードID] = " + rs.getRecordID());                               (4)
}
rs.close();                                                                              (5)
pstmt.close();                                                                           (5)

con.close();

◆(1) ShunPreparedStatementオブジェクトの作成

ShunPreparedStatementオブジェクトは、prepareSearchメソッドのパラメタに検索式とリターン式を指定して作成します。

検索式およびリターン式の詳細は、“付録B 検索式、リターン式およびソート式の書式”を参照してください。

◆(2) 返信開始番号と返信要求件数の設定

setRequestメソッドに返信開始番号と返信要求件数を指定します。setRequestメソッドを省略した場合、返信要求件数はconductor用動作環境ファイルまたはdirector用動作環境ファイルのAnsMaxに設定された値が指定されます。

返信要求件数には、1画面に表示する件数を指定します。

◆(3) 検索の実行(ShunResultSetオブジェクトの作成)

検索の実行はexecuteSearchメソッドを使用します。検索した結果としてShunResultSetオブジェクトが作成されます。

◆(4) 検索した結果の取出し

検索した結果を取り出すのと同様にレコードIDを取り出す前にも、必ずnextメソッドを使用します。nextメソッドは、次のデータが存在する場合はtrueを返し、それ以上データがない場合はfalseを返します。

◆(5) ShunResultSetオブジェクトおよびShunPreparedStatementオブジェクトの解放

ShunResultSetオブジェクトとShunPreparedStatementオブジェクトは、使用後にそれぞれのcloseメソッドで必ず解放します。

■Apworks利用時の記述例

レコードID取出し方法についてビジネスクラスの記述例を以下に示します。Shunsakuアクセスクラスについては、Apworksの対話形式のウィザードで作成されたひな形を使用してください。Shunsakuアクセスクラスのひな形については“9.3.2.2 件数に応じて検索した結果を取得する”を参照してください。

ビジネスクラス

ShunConnection con = new ShunConnection();

ShunsakuAccessController controller = new ShunsakuAccessController(con);
controller.search(key);
Object[] resultData = 
   controller.getResultData(ShunsakuAccessController.SORT_NONE, 11, 5);
ShunAddressListModel listData = new ShunAddressListModel(resultData);
dataBean.setResultList(listData);

ListModel resultList = dataBean.getResultList();
for(int i = 0; i < resultList.getSize(); i++) {
   Object result = resultList.getElementAt(i);
   AddressData new_result = (AddressData)result;
   String recordID = new_result.getRecordID();
}

controller.close();
con.close();

目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2006