org.apache.commons.dbutils
クラス QueryRunner

java.lang.Object
  拡張org.apache.commons.dbutils.QueryRunner

public class QueryRunner
extends Object

ResultSet をハンドルするプラグ化可能なストラテジーを持つ SQL の問い合わせを実行します。 このクラスはスレッドセーフです。

作成者:
Henri Yandell, Juozas Baliuka, Steven Caswell, David Graham
関連項目:
ResultSetHandler
翻訳者:
小川 環
校正者:
日置 聡

フィールドの概要
protected  DataSource ds
          接続を取り出すためのデータソース。
 
コンストラクタの概要
QueryRunner()
          QueryRunner のコンストラクタ。
QueryRunner(DataSource ds)
          QueryRunnerのコンストラクタ。
 
メソッドの概要
protected  void fillStatement(PreparedStatement stmt, Object[] params)
          PreparedStatement の置換パラメータに、 指定したオブジェクトを埋め込みます。
 DataSource getDataSource()
          このRunnerが使用している DataSource を返します。
protected  PreparedStatement prepareStatement(Connection conn, String sql)
          指定したSQLに対応する PreparedStatement オブジェクトを作成および初期化します。
 Object query(Connection conn, String sql, Object[] params, ResultSetHandler rsh)
          置換パラメータを埋め込んだ SQL SELECT の問い合わせを実行します。
 Object query(Connection conn, String sql, Object param, ResultSetHandler rsh)
          単一の置換パラメータを埋め込んだ SQL SELECT の問い合わせを実行します。
 Object query(Connection conn, String sql, ResultSetHandler rsh)
          置換パラメータが一切含まれない SQL SELECT の問い合わせを実行します。
 Object query(String sql, Object[] params, ResultSetHandler rsh)
          指定された SQL SELECT を実行し、結果を格納したオブジェクトを返します。
 Object query(String sql, Object param, ResultSetHandler rsh)
          単一の置換パラメータを含む、指定された SQL SELECT を実行します。
 Object query(String sql, ResultSetHandler rsh)
          指定された SQL SELECT を置換パラメータなしで実行します。
protected  void rethrow(SQLException cause, String sql, Object[] params)
          さらに有益なエラーメッセージを含む新規の例外をスローします
 void setDataSource(DataSource dataSource)
          この Runner がデータベース接続を取得するのに使用する DataSource をセットします。
 int update(Connection conn, String sql)
          置換パラメータのない SQL INSERT、UPDATE、または、DELETE の問い合わせを実行します。
 int update(Connection conn, String sql, Object param)
          単一の置換パラメータを埋め込んだ SQL INSERT、UPDATE、または、DELETE の問い合わせを実行します。
 int update(Connection conn, String sql, Object[] params)
          SQL INSERT、UPDATE、または、DELETE の問い合わせを実行します。
 int update(String sql)
          置換パラメータを含まない、指定された SQL INSERT、UPDATE、または、DELETE の問い合わせを実行します。
 int update(String sql, Object param)
          単一の置換パラメータを含む、指定された SQL INSERT、UPDATE、または、DELETE の問い合わせを実行します。
 int update(String sql, Object[] params)
          指定された SQL INSERT、UPDATE、または、DELETE の問い合わせを実行します。
protected  ResultSet wrap(ResultSet rs)
          ResultSet を処理する前に、デコレータによってラップします。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

ds

protected DataSource ds
接続を取り出すためのデータソース。

コンストラクタの詳細

QueryRunner

public QueryRunner()
QueryRunner のコンストラクタ。


QueryRunner

public QueryRunner(DataSource ds)
QueryRunnerのコンストラクタ。 Connection パラメータを使用しないメソッドでは、 この DataSource から接続を取り出します。

パラメータ:
ds - 接続を取り出すためのデータソース。
メソッドの詳細

fillStatement

protected void fillStatement(PreparedStatement stmt,
                             Object[] params)
                      throws SQLException
PreparedStatement の置換パラメータに、 指定したオブジェクトを埋め込みます。

パラメータ:
stmt -
params - 問い合わせの置換パラメータ。 null は有効な値として通過されます。
例外:
SQLException

getDataSource

public DataSource getDataSource()
このRunnerが使用している DataSource を返します。


prepareStatement

protected PreparedStatement prepareStatement(Connection conn,
                                             String sql)
                                      throws SQLException
指定したSQLに対応する PreparedStatement オブジェクトを作成および初期化します。 QueryRunner のメソッドはステートメントを準備するのにこのメソッドを常に呼び出します。 必要であれば、PreparedStatement の特別なコンフィグレーションを提供するためにこのメソッドをサブクラスでオーバーライド可能です。 この実装は、ただ単純に conn.prepareStatement(sql) を呼び出します。

パラメータ:
conn - PreparedStatement を作成するために使用する Connection
sql - 準備対象の SQL ステートメント。
戻り値:
初期化された PreparedStatement
例外:
SQLException

query

public Object query(Connection conn,
                    String sql,
                    Object param,
                    ResultSetHandler rsh)
             throws SQLException
単一の置換パラメータを埋め込んだ SQL SELECT の問い合わせを実行します。 呼び出し側では、接続の解放処理が課せられます。

パラメータ:
conn - 問い合わせを実行する接続。
sql - 実行する問い合わせ。
param - 置換パラメータ。
rsh - 結果をオブジェクトに変換するハンドラ。
戻り値:
ハンドラによって返されるオブジェクト。
例外:
SQLException

query

public Object query(Connection conn,
                    String sql,
                    Object[] params,
                    ResultSetHandler rsh)
             throws SQLException
置換パラメータを埋め込んだ SQL SELECT の問い合わせを実行します。 呼び出し側では、接続の解放処理が課せられます。

パラメータ:
conn - 問い合わせを実行する接続。
sql - 実行する問い合わせ。
params - 置換パラメータ。
rsh - 結果をオブジェクトに変換するハンドラ。
戻り値:
ハンドラによって返されるオブジェクト。
例外:
SQLException

query

public Object query(Connection conn,
                    String sql,
                    ResultSetHandler rsh)
             throws SQLException
置換パラメータが一切含まれない SQL SELECT の問い合わせを実行します。 呼び出し側では、接続の解放処理が課せられます。

パラメータ:
conn - 問い合わせを実行する接続。
sql - 実行する問い合わせ。
rsh - 結果をオブジェクトに変換するハンドラ。
戻り値:
ハンドラによって返されるオブジェクト。
例外:
SQLException

query

public Object query(String sql,
                    Object param,
                    ResultSetHandler rsh)
             throws SQLException
単一の置換パラメータを含む、指定された SQL SELECT を実行します。 Connection は、コンストラクタでセットされた DataSource から取り出されます。

パラメータ:
sql - 実行するSQLステートメント。
param - 置換パラメータ。
rsh - ResultSet から結果を格納したオブジェクトを作成するために使用されるハンドラ。
戻り値:
ハンドラによって生成されるオブジェクト。
例外:
SQLException

query

public Object query(String sql,
                    Object[] params,
                    ResultSetHandler rsh)
             throws SQLException
指定された SQL SELECT を実行し、結果を格納したオブジェクトを返します。 Connection は、コンストラクタでセットされた DataSource から取り出されます。

パラメータ:
sql - 実行するSQLステートメント。
params - この配列とともにPreparedStatementのINパラメータを初期化します。
rsh - ResultSet から結果を格納したオブジェクトを作成するために使用されるハンドラ。
戻り値:
ハンドラによって生成されるオブジェクト。
例外:
SQLException

query

public Object query(String sql,
                    ResultSetHandler rsh)
             throws SQLException
指定された SQL SELECT を置換パラメータなしで実行します。 Connection は、コンストラクタでセットされた DataSource から取り出されます。

パラメータ:
sql - 実行するSQLステートメント。
rsh - ResultSet から結果を格納したオブジェクトを作成するために使用されるハンドラ。
戻り値:
ハンドラによって生成されるオブジェクト。
例外:
SQLException

rethrow

protected void rethrow(SQLException cause,
                       String sql,
                       Object[] params)
                throws SQLException
さらに有益なエラーメッセージを含む新規の例外をスローします

パラメータ:
cause - 再スローされる際に、新規の例外へチェーンされる根本的な例外。
sql - 例外発生時に実行した問い合わせ。
params - 問い合わせの置換パラメータ。 null は有効な値として通過されます。
例外:
SQLException

setDataSource

public void setDataSource(DataSource dataSource)
この Runner がデータベース接続を取得するのに使用する DataSource をセットします。 Connection を渡さない状態で、実行メソッドを使用するつもりであれば、 デフォルトコンストラクタを含め Runner が作成した後、これを呼び出すようにすべきです。

パラメータ:
dataSource - 使用するデータソース。

update

public int update(Connection conn,
                  String sql)
           throws SQLException
置換パラメータのない SQL INSERT、UPDATE、または、DELETE の問い合わせを実行します。

パラメータ:
conn - 問い合わせを実行するのに使用する接続。
sql - 実行するSQL。
戻り値:
更新した行数。
例外:
SQLException

update

public int update(Connection conn,
                  String sql,
                  Object param)
           throws SQLException
単一の置換パラメータを埋め込んだ SQL INSERT、UPDATE、または、DELETE の問い合わせを実行します。

パラメータ:
conn - 問い合わせを実行するのに使用する接続。
sql - 実行するSQL。
param - 置換パラメータ。
戻り値:
更新した行数。
例外:
SQLException

update

public int update(Connection conn,
                  String sql,
                  Object[] params)
           throws SQLException
SQL INSERT、UPDATE、または、DELETE の問い合わせを実行します。

パラメータ:
conn - 問い合わせを実行するのに使用する接続。
sql - 実行するSQL。
params - 置換パラメータ。
戻り値:
更新した行数。
例外:
SQLException

update

public int update(String sql)
           throws SQLException
置換パラメータを含まない、指定された SQL INSERT、UPDATE、または、DELETE の問い合わせを実行します。 Connection は、コンストラクタでセットされた DataSource から取り出されます。

パラメータ:
sql - 実行するSQL文。
戻り値:
更新した行数。
例外:
SQLException

update

public int update(String sql,
                  Object param)
           throws SQLException
単一の置換パラメータを含む、指定された SQL INSERT、UPDATE、または、DELETE の問い合わせを実行します。 Connection は、コンストラクタでセットされた DataSource から取り出されます。

パラメータ:
sql - 実行するSQL文。
param - 置換パラメータ。
戻り値:
更新した行数。
例外:
SQLException

update

public int update(String sql,
                  Object[] params)
           throws SQLException
指定された SQL INSERT、UPDATE、または、DELETE の問い合わせを実行します。 Connection は、コンストラクタでセットされた DataSource から取り出されます。

パラメータ:
sql - 実行するSQL文。
params - PreparedStatement の IN (例. '?')パラメータを初期化します。
戻り値:
更新した行数。
例外:
SQLException

wrap

protected ResultSet wrap(ResultSet rs)
ResultSet を処理する前に、デコレータによってラップします。 この実装は、デコレーションが施された状態でない限り、与えられた ResultSet を返します。

多くの場合、このメソッドの実装はこのように無名インナークラスの中でラップされます。

 
 QueryRunner run = new QueryRunner() {
     protected ResultSet wrap(ResultSet rs) {
         return StringTrimmedResultSet.wrap(rs);
     }
 };
 

パラメータ:
rs - デコレーションを施す ResultSetnull ではいけません。
戻り値:
デコレータによってラップされた ResultSet


このドキュメントは、Ja-Jakartaにより訳されました。 コメントがある場合は report@jajakarta.orgまでお願いします。
Translated into Japanese by jajakarta.org. The original page is here.
Copyright (c) 2002-2003 - Apache Software Foundation