インターフェース JdbcOperations

すべての既知の実装クラス:
JdbcTemplate

public interface JdbcOperations
JDBC 操作の基本セットを指定するインターフェース。

JdbcTemplate によって実装されます。直接使用されることはあまりありませんが、簡単にモックまたはスタブできるため、テスト容易性を高めるための便利なオプションです。

または、標準の JDBC インフラストラクチャをモックすることもできます。ただし、このインターフェースをモックすることで、作業量が大幅に少なくなります。データアクセスコードをテストするためのモックオブジェクトアプローチの代替として、spring-test アーティファクトで Spring TestContext フレームワークを介して提供される強力な統合テストサポートを検討してください。

注: 6.1 では、JdbcClient の形式で利用可能な統合 JDBC アクセスファサードがありますJdbcClient は、インデックス付きパラメーターまたは名前付きパラメーターを柔軟に使用して、一般的な JDBC クエリ / 更新に流れるような API スタイルを提供します。実際の実行は JdbcOperations/NamedParameterJdbcOperations に委譲されます。

作成者:
Rod Johnson, Juergen Hoeller
関連事項:
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    int[]
    バッチ処理を使用して、単一の JDBC ステートメントで複数の SQL 更新を発行します。
    <T> int[][]
    batchUpdate(StringSE sql, CollectionSE<T> batchArgs, int batchSize, ParameterizedPreparedStatementSetter<T> pss)
    提供された引数を収集して提供された SQL ステートメントを使用して、複数のバッチを実行します。
    int[]
    batchUpdate(StringSE sql, ListSE<ObjectSE[]> batchArgs)
    提供された引数のバッチで提供された SQL ステートメントを使用して、バッチを実行します。
    int[]
    batchUpdate(StringSE sql, ListSE<ObjectSE[]> batchArgs, int[] argTypes)
    提供された引数のバッチで提供された SQL ステートメントを使用して、バッチを実行します。
    int[]
    単一の PreparedStatement で複数の更新ステートメントを発行し、バッチ更新と BatchPreparedStatementSetter を使用して値を設定します。
    int[]
    単一の PreparedStatement で複数の更新ステートメントを発行し、バッチ更新と BatchPreparedStatementSetter を使用して値を設定します。
    CallableStatementCreator を使用して SQL 呼び出しを実行し、SQL および必要なパラメーターを提供します。
    void
    単一の SQL 実行(通常は DDL ステートメント)を発行します。
    <T> T
    JDBC CallableStatement で動作するコールバックアクションとして実装される JDBC データアクセス操作を実行します。
    <T> T
    JDBC PreparedStatement で動作するコールバックアクションとして実装される JDBC データアクセス操作を実行します。
    <T> T
    JDBC CallableStatement で動作するコールバックアクションとして実装される JDBC データアクセス操作を実行します。
    <T> T
    JDBC 接続で動作するコールバックアクションとして実装される JDBC データアクセス操作を実行します。
    <T> T
    JDBC PreparedStatement で動作するコールバックアクションとして実装される JDBC データアクセス操作を実行します。
    <T> T
    JDBC ステートメントで動作するコールバックアクションとして実装される JDBC データアクセス操作を実行します。
    <T> T
    query(StringSE sql, ObjectSE[] args, int[] argTypes, ResultSetExtractor<T> rse)
    指定された SQL をクエリして、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、ResultSet を ResultSetExtractor で読み取ります。
    void
    query(StringSE sql, ObjectSE[] args, int[] argTypes, RowCallbackHandler rch)
    指定された SQL にクエリを実行して、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowCallbackHandler で ResultSet を行ごとに読み取ります。
    <T> ListSE<T>
    query(StringSE sql, ObjectSE[] args, int[] argTypes, RowMapper<T> rowMapper)
    指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して各行を結果オブジェクトにマッピングします。
    <T> T
    使用すべきではありません。
    void
    使用すべきではありません。
    <T> ListSE<T>
    query(StringSE sql, ObjectSE[] args, RowMapper<T> rowMapper)
    使用すべきではありません。
    5.3 現在、query(String, RowMapper, Object...) を推奨
    <T> T
    ResultSet を ResultSetExtractor で読み取り、準備済みステートメントを使用して照会します。
    void
    指定された SQL を照会して、SQL から準備済みステートメントを作成し、値を照会にバインドする方法を知っている PreparedStatementSetter 実装を作成し、RowCallbackHandler で行ごとに ResultSet を読み取ります。
    <T> ListSE<T>
    与えられた SQL をクエリして、SQL から準備されたステートメントを作成し、RowMapper を介して各行を結果オブジェクトにマッピングして、クエリに値をバインドする方法を知っている PreparedStatementSetter 実装を作成します。
    <T> T
    静的 SQL を指定してクエリを実行し、ResultSet を ResultSetExtractor で読み取ります。
    <T> T
    指定された SQL をクエリして、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、ResultSet を ResultSetExtractor で読み取ります。
    void
    RowCallbackHandler を使用して行ごとに ResultSet を読み取り、静的 SQL を指定してクエリを実行します。
    void
    指定された SQL にクエリを実行して、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowCallbackHandler で ResultSet を行ごとに読み取ります。
    <T> ListSE<T>
    query(StringSE sql, RowMapper<T> rowMapper)
    静的 SQL を指定してクエリを実行し、RowMapper を介して各行を結果オブジェクトにマッピングします。
    <T> ListSE<T>
    query(StringSE sql, RowMapper<T> rowMapper, ObjectSE... args)
    指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して各行を結果オブジェクトにマッピングします。
    <T> T
    ResultSet を ResultSetExtractor で読み取り、準備済みステートメントを使用して照会します。
    void
    RowCallbackHandler で行ごとに ResultSet を読み取り、準備されたステートメントを使用して照会します。
    <T> ListSE<T>
    準備済みステートメントを使用して照会し、RowMapper を介して各行を結果オブジェクトにマッピングします。
    静的 SQL を指定して、結果リストのクエリを実行します。
    <T> ListSE<T>
    queryForList(StringSE sql, ClassSE<T> elementType)
    静的 SQL を指定して、結果リストのクエリを実行します。
    <T> ListSE<T>
    queryForList(StringSE sql, ClassSE<T> elementType, ObjectSE... args)
    指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。
    指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。
    queryForList(StringSE sql, ObjectSE[] args, int[] argTypes)
    指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。
    <T> ListSE<T>
    queryForList(StringSE sql, ObjectSE[] args, int[] argTypes, ClassSE<T> elementType)
    指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。
    <T> ListSE<T>
    queryForList(StringSE sql, ObjectSE[] args, ClassSE<T> elementType)
    使用すべきではありません。
    静的 SQL を指定して、結果マップのクエリを実行します。
    指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果マップを期待します。
    queryForMap(StringSE sql, ObjectSE[] args, int[] argTypes)
    指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果マップを期待します。
    <T> T
    queryForObject(StringSE sql, ClassSE<T> requiredType)
    静的 SQL を指定して、結果オブジェクトのクエリを実行します。
    <T> T
    queryForObject(StringSE sql, ClassSE<T> requiredType, ObjectSE... args)
    指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果オブジェクトを期待します。
    <T> T
    queryForObject(StringSE sql, ObjectSE[] args, int[] argTypes, ClassSE<T> requiredType)
    指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果オブジェクトを期待します。
    <T> T
    queryForObject(StringSE sql, ObjectSE[] args, int[] argTypes, RowMapper<T> rowMapper)
    指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して単一の結果行を結果オブジェクトにマッピングします。
    <T> T
    queryForObject(StringSE sql, ObjectSE[] args, ClassSE<T> requiredType)
    使用すべきではありません。
    <T> T
    queryForObject(StringSE sql, ObjectSE[] args, RowMapper<T> rowMapper)
    使用すべきではありません。
    <T> T
    queryForObject(StringSE sql, RowMapper<T> rowMapper)
    静的 SQL を指定してクエリを実行し、RowMapper を介して単一の結果行を結果オブジェクトにマッピングします。
    <T> T
    queryForObject(StringSE sql, RowMapper<T> rowMapper, ObjectSE... args)
    指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して単一の結果行を結果オブジェクトにマッピングします。
    静的 SQL を指定して、SqlRowSet のクエリを実行します。
    指定された SQL を照会して、SQL から準備済みステートメントを作成し、SqlRowSet を想定して、照会にバインドする引数のリストを作成します。
    queryForRowSet(StringSE sql, ObjectSE[] args, int[] argTypes)
    指定された SQL を照会して、SQL から準備済みステートメントを作成し、SqlRowSet を想定して、照会にバインドする引数のリストを作成します。
    <T> StreamSE<T>
    指定された SQL をクエリして、SQL とクエリに値をバインドする方法を知っている PreparedStatementSetter 実装から準備済みステートメントを作成し、各行を RowMapper を介して結果オブジェクトにマッピングし、反復可能でクローズ可能なストリームに変換します。
    <T> StreamSE<T>
    queryForStream(StringSE sql, RowMapper<T> rowMapper)
    静的 SQL を指定してクエリを実行し、各行を RowMapper を介して結果オブジェクトにマッピングし、それを反復可能でクローズ可能なストリームに変換します。
    <T> StreamSE<T>
    queryForStream(StringSE sql, RowMapper<T> rowMapper, ObjectSE... args)
    指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、各行を RowMapper を介して結果オブジェクトにマッピングし、それを反復可能でクローズ可能なストリームに変換します。
    <T> StreamSE<T>
    準備済みステートメントを使用してクエリを実行し、各行を RowMapper を介して結果オブジェクトにマッピングし、それを反復可能でクローズ可能なストリームに変換します。
    int
    単一の SQL 更新操作(挿入、更新、削除ステートメントなど)を発行します。
    int
    update(StringSE sql, ObjectSE... args)
    準備されたステートメントを介して、単一の SQL 更新操作(挿入、更新、削除ステートメントなど)を発行し、指定された引数をバインドします。
    int
    update(StringSE sql, ObjectSE[] args, int[] argTypes)
    準備されたステートメントを介して、単一の SQL 更新操作(挿入、更新、削除ステートメントなど)を発行し、指定された引数をバインドします。
    int
    PreparedStatementSetter を使用して更新ステートメントを発行し、指定された SQL でバインドパラメーターを設定します。
    int
    PreparedStatementCreator を使用して単一の SQL 更新操作(挿入、更新、削除ステートメントなど)を発行し、SQL および必要なパラメーターを提供します。
    int
    update(PreparedStatementCreator psc, KeyHolder generatedKeyHolder)
    PreparedStatementCreator を使用して更新ステートメントを発行し、SQL および必要なパラメーターを提供します。
  • メソッドの詳細

    • execute

      @Nullable <T> T execute(ConnectionCallback<T> action) throws DataAccessException
      JDBC 接続で動作するコールバックアクションとして実装される JDBC データアクセス操作を実行します。これにより、Spring のマネージ JDBC 環境内で任意のデータアクセス操作を実装できます。つまり、Spring 管理のトランザクションに参加し、JDBC SQLException を Spring の DataAccessException 階層に変換します。

      コールバックアクションは、ドメインオブジェクトまたはドメインオブジェクトのコレクションなどの結果オブジェクトを返すことができます。

      パラメーター:
      action - アクションを指定するコールバックオブジェクト
      戻り値:
      アクションによって返された結果オブジェクト。ない場合は null 
      例外:
      DataAccessException - 問題がある場合
    • execute

      @Nullable <T> T execute(StatementCallback<T> action) throws DataAccessException
      JDBC ステートメントで動作するコールバックアクションとして実装される JDBC データアクセス操作を実行します。これにより、Spring のマネージ JDBC 環境内で、単一のステートメントに任意のデータアクセス操作を実装できます。つまり、Spring 管理トランザクションに参加し、JDBC SQLExceptions を Spring の DataAccessException 階層に変換します。

      コールバックアクションは、ドメインオブジェクトまたはドメインオブジェクトのコレクションなどの結果オブジェクトを返すことができます。

      パラメーター:
      action - アクションを指定するコールバック
      戻り値:
      アクションによって返された結果オブジェクト。ない場合は null 
      例外:
      DataAccessException - 問題がある場合
    • execute

      void execute(StringSE sql) throws DataAccessException
      単一の SQL 実行(通常は DDL ステートメント)を発行します。
      パラメーター:
      sql - 実行する静的 SQL
      例外:
      DataAccessException - 問題がある場合
    • query

      @Nullable <T> T query(StringSE sql, ResultSetExtractor<T> rse) throws DataAccessException
      静的 SQL を指定してクエリを実行し、ResultSet を ResultSetExtractor で読み取ります。

      PreparedStatement ではなく JDBC ステートメントを使用します。PreparedStatement で静的クエリを実行する場合は、引数配列として null でオーバーロードされた query メソッドを使用します。

      パラメーター:
      sql - 実行する SQL クエリ
      rse - 結果のすべての行を抽出するコールバック
      戻り値:
      ResultSetExtractor によって返される任意の結果オブジェクト
      例外:
      DataAccessException - クエリの実行に問題がある場合
      関連事項:
    • query

      void query(StringSE sql, RowCallbackHandler rch) throws DataAccessException
      RowCallbackHandler を使用して行ごとに ResultSet を読み取り、静的 SQL を指定してクエリを実行します。

      PreparedStatement ではなく JDBC ステートメントを使用します。PreparedStatement で静的クエリを実行する場合は、引数配列として null でオーバーロードされた query メソッドを使用します。

      パラメーター:
      sql - 実行する SQL クエリ
      rch - 結果を 1 行ずつ抽出するコールバック
      例外:
      DataAccessException - クエリの実行に問題がある場合
      関連事項:
    • query

      <T> ListSE<T> query(StringSE sql, RowMapper<T> rowMapper) throws DataAccessException
      静的 SQL を指定してクエリを実行し、RowMapper を介して各行を結果オブジェクトにマッピングします。

      PreparedStatement ではなく JDBC ステートメントを使用します。PreparedStatement で静的クエリを実行する場合は、引数配列として null でオーバーロードされた query メソッドを使用します。

      パラメーター:
      sql - 実行する SQL クエリ
      rowMapper - 行ごとに 1 つのオブジェクトをマップするコールバック
      戻り値:
      マッピングされたオブジェクトを含む結果リスト
      例外:
      DataAccessException - クエリの実行に問題がある場合
      関連事項:
    • queryForStream

      <T> StreamSE<T> queryForStream(StringSE sql, RowMapper<T> rowMapper) throws DataAccessException
      静的 SQL を指定してクエリを実行し、各行を RowMapper を介して結果オブジェクトにマッピングし、それを反復可能でクローズ可能なストリームに変換します。

      PreparedStatement ではなく JDBC ステートメントを使用します。PreparedStatement で静的クエリを実行する場合は、引数配列として null でオーバーロードされた query メソッドを使用します。

      パラメーター:
      sql - 実行する SQL クエリ
      rowMapper - 行ごとに 1 つのオブジェクトをマップするコールバック
      戻り値:
      マップされたオブジェクトを含む結果のストリーム。完全に処理されたら閉じる必要があります (たとえば、try-with-resources 句を通して)
      例外:
      DataAccessException - クエリの実行に問題がある場合
      導入:
      5.3
      関連事項:
    • queryForObject

      @Nullable <T> T queryForObject(StringSE sql, RowMapper<T> rowMapper) throws DataAccessException
      静的 SQL を指定してクエリを実行し、RowMapper を介して単一の結果行を結果オブジェクトにマッピングします。

      PreparedStatement ではなく JDBC ステートメントを使用します。PreparedStatement で静的クエリを実行する場合は、引数配列として null でオーバーロードされた queryForObject(String, RowMapper, Object...) メソッドを使用します。

      パラメーター:
      sql - 実行する SQL クエリ
      rowMapper - 行ごとに 1 つのオブジェクトをマップするコールバック
      戻り値:
      単一のマッピングされたオブジェクト (指定された RowMapper が null を返した場合、null になることがあります)
      例外:
      IncorrectResultSizeDataAccessException - クエリが正確に 1 行を返さない場合
      DataAccessException - クエリの実行に問題がある場合
      関連事項:
    • queryForObject

      @Nullable <T> T queryForObject(StringSE sql, ClassSE<T> requiredType) throws DataAccessException
      静的 SQL を指定して、結果オブジェクトのクエリを実行します。

      PreparedStatement ではなく JDBC ステートメントを使用します。PreparedStatement で静的クエリを実行する場合は、引数配列として null でオーバーロードされた queryForObject(String, Class, Object...) メソッドを使用します。

      このメソッドは、既知の結果で静的 SQL を実行できます。クエリは、単一の行 / 単一列クエリであることが期待されています。返された結果は、対応するオブジェクト型に直接マップされます。

      パラメーター:
      sql - 実行する SQL クエリ
      requiredType - 結果オブジェクトが一致すると予想される型
      戻り値:
      必要な型の結果オブジェクト、または SQL NULL の場合は null 
      例外:
      IncorrectResultSizeDataAccessException - クエリが正確に 1 行を返さない場合
      IncorrectResultSetColumnCountException - クエリが単一の列を含む行を返さない場合
      DataAccessException - クエリの実行に問題がある場合
      関連事項:
    • queryForMap

      静的 SQL を指定して、結果マップのクエリを実行します。

      PreparedStatement ではなく JDBC ステートメントを使用します。PreparedStatement で静的クエリを実行する場合は、引数配列として null でオーバーロードされた queryForMap(String, Object...) メソッドを使用します。

      クエリは単一行クエリであることが期待されています。結果行はマップにマップされます(列名をキーとして使用して、各列に 1 つのエントリ)。

      パラメーター:
      sql - 実行する SQL クエリ
      戻り値:
      結果マップ (列名をキーとして、列ごとに 1 つのエントリ)
      例外:
      IncorrectResultSizeDataAccessException - クエリが正確に 1 行を返さない場合
      DataAccessException - クエリの実行に問題がある場合
      関連事項:
    • queryForList

      <T> ListSE<T> queryForList(StringSE sql, ClassSE<T> elementType) throws DataAccessException
      静的 SQL を指定して、結果リストのクエリを実行します。

      PreparedStatement ではなく JDBC ステートメントを使用します。PreparedStatement で静的クエリを実行する場合は、引数配列として null でオーバーロードされた queryForList メソッドを使用します。

      結果は、結果オブジェクトのリスト(各行に 1 つのエントリ)にマップされ、各オブジェクトは指定された要素型に一致します。

      パラメーター:
      sql - 実行する SQL クエリ
      elementType - 結果リスト内の必須型の要素 (たとえば、Integer.class)
      戻り値:
      指定された要素型に一致するオブジェクトのリスト
      例外:
      DataAccessException - クエリの実行に問題がある場合
      関連事項:
    • queryForList

      静的 SQL を指定して、結果リストのクエリを実行します。

      PreparedStatement ではなく JDBC ステートメントを使用します。PreparedStatement で静的クエリを実行する場合は、引数配列として null でオーバーロードされた queryForList メソッドを使用します。

      結果は、マップのリスト(各行に 1 つのエントリ)にマップされます(列名をキーとして使用して、各列に 1 つのエントリ)。リスト内の各要素は、このインターフェースの queryForMap メソッドによって返される形式になります。

      パラメーター:
      sql - 実行する SQL クエリ
      戻り値:
      行ごとにマップを含むリスト
      例外:
      DataAccessException - クエリの実行に問題がある場合
      関連事項:
    • queryForRowSet

      SqlRowSet queryForRowSet(StringSE sql) throws DataAccessException
      静的 SQL を指定して、SqlRowSet のクエリを実行します。

      PreparedStatement ではなく JDBC ステートメントを使用します。PreparedStatement で静的クエリを実行する場合は、引数配列として null でオーバーロードされた queryForRowSet メソッドを使用します。

      結果は SqlRowSet にマップされ、切断された方法でデータを保持します。このラッパーは、スローされた SQLException を変換します。

      デフォルトの実装では、実行時に JDBC RowSet サポートが使用可能である必要があることに注意してください。デフォルトでは、標準の JDBC CachedRowSet が使用されます。

      パラメーター:
      sql - 実行する SQL クエリ
      戻り値:
      SqlRowSet 表現 (おそらく javax.sql.rowset.CachedRowSet のラッパー)
      例外:
      DataAccessException - クエリの実行に問題がある場合
      関連事項:
    • update

      int update(StringSE sql) throws DataAccessException
      単一の SQL 更新操作(挿入、更新、削除ステートメントなど)を発行します。
      パラメーター:
      sql - 実行する静的 SQL
      戻り値:
      影響を受ける行の数
      例外:
      DataAccessException - 問題がある場合。
    • batchUpdate

      int[] batchUpdate(StringSE... sql) throws DataAccessException
      バッチ処理を使用して、単一の JDBC ステートメントで複数の SQL 更新を発行します。

      JDBC ドライバーがバッチ更新をサポートしていない場合、単一のステートメントで個別の更新にフォールバックします。

      パラメーター:
      sql - 実行される SQL ステートメントの配列を定義します。
      戻り値:
      各ステートメントの影響を受ける行数の配列
      例外:
      DataAccessException - バッチの実行に問題がある場合
    • execute

      JDBC PreparedStatement で動作するコールバックアクションとして実装された JDBC データアクセス操作を実行します。これにより、Spring のマネージ JDBC 環境内で、単一のステートメントに任意のデータアクセス操作を実装できます。つまり、Spring 管理トランザクションに参加し、JDBC SQLException を Spring の DataAccessException 階層に変換します。

      コールバックアクションは、ドメインオブジェクトまたはドメインオブジェクトのコレクションなどの結果オブジェクトを返すことができます。

      パラメーター:
      psc - 接続を指定して PreparedStatement を作成するコールバック
      action - アクションを指定するコールバック
      戻り値:
      アクションによって返された結果オブジェクト。ない場合は null 
      例外:
      DataAccessException - 問題がある場合
    • execute

      @Nullable <T> T execute(StringSE sql, PreparedStatementCallback<T> action) throws DataAccessException
      JDBC PreparedStatement で動作するコールバックアクションとして実装された JDBC データアクセス操作を実行します。これにより、Spring のマネージ JDBC 環境内で、単一のステートメントに任意のデータアクセス操作を実装できます。つまり、Spring 管理トランザクションに参加し、JDBC SQLException を Spring の DataAccessException 階層に変換します。

      コールバックアクションは、ドメインオブジェクトまたはドメインオブジェクトのコレクションなどの結果オブジェクトを返すことができます。

      パラメーター:
      sql - 実行する SQL
      action - アクションを指定するコールバック
      戻り値:
      アクションによって返された結果オブジェクト。ない場合は null 
      例外:
      DataAccessException - 問題がある場合
    • query

      ResultSet を ResultSetExtractor で読み取り、準備済みステートメントを使用して照会します。

      PreparedStatementCreator は、直接実装するか、PreparedStatementCreatorFactory を介して構成できます。

      パラメーター:
      psc - 接続を指定して PreparedStatement を作成するコールバック
      rse - 結果を抽出するコールバック
      戻り値:
      ResultSetExtractor によって返される任意の結果オブジェクト
      例外:
      DataAccessException - 問題がある場合
      関連事項:
    • query

      ResultSet を ResultSetExtractor で読み取り、準備済みステートメントを使用して照会します。
      パラメーター:
      sql - 実行する SQL クエリ
      pss - 準備されたステートメントに値を設定する方法を知っているコールバック。これが null の場合、SQL にはバインドパラメーターが含まれないと見なされます。バインドパラメーターがない場合でも、このコールバックを使用してフェッチサイズやその他のパフォーマンスオプションを設定できます。
      rse - 結果を抽出するコールバック
      戻り値:
      ResultSetExtractor によって返される任意の結果オブジェクト
      例外:
      DataAccessException - 問題がある場合
    • query

      @Nullable <T> T query(StringSE sql, ObjectSE[] args, int[] argTypes, ResultSetExtractor<T> rse) throws DataAccessException
      指定された SQL をクエリして、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、ResultSet を ResultSetExtractor で読み取ります。
      パラメーター:
      sql - 実行する SQL クエリ
      args - クエリにバインドする引数
      argTypes - 引数の SQL 型 (java.sql.Types からの定数)
      rse - 結果を抽出するコールバック
      戻り値:
      ResultSetExtractor によって返される任意の結果オブジェクト
      例外:
      DataAccessException - クエリが失敗した場合
      関連事項:
    • query

      使用すべきではありません。
      指定された SQL をクエリして、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、ResultSet を ResultSetExtractor で読み取ります。
      パラメーター:
      sql - 実行する SQL クエリ
      args - クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示す SqlParameterValue オブジェクトを含めることもできます。
      rse - 結果を抽出するコールバック
      戻り値:
      ResultSetExtractor によって返される任意の結果オブジェクト
      例外:
      DataAccessException - クエリが失敗した場合
    • query

      @Nullable <T> T query(StringSE sql, ResultSetExtractor<T> rse, @Nullable ObjectSE... args) throws DataAccessException
      指定された SQL をクエリして、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、ResultSet を ResultSetExtractor で読み取ります。
      パラメーター:
      sql - 実行する SQL クエリ
      rse - 結果を抽出するコールバック
      args - クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示す SqlParameterValue オブジェクトを含めることもできます。
      戻り値:
      ResultSetExtractor によって返される任意の結果オブジェクト
      例外:
      DataAccessException - クエリが失敗した場合
      導入:
      3.0.1
    • query

      RowCallbackHandler で行ごとに ResultSet を読み取り、準備されたステートメントを使用して照会します。

      PreparedStatementCreator は、直接実装するか、PreparedStatementCreatorFactory を介して構成できます。

      パラメーター:
      psc - 接続を指定して PreparedStatement を作成するコールバック
      rch - 結果を 1 行ずつ抽出するコールバック
      例外:
      DataAccessException - 問題がある場合
      関連事項:
    • query

      指定された SQL を照会して、SQL から準備済みステートメントを作成し、値を照会にバインドする方法を知っている PreparedStatementSetter 実装を作成し、RowCallbackHandler で行ごとに ResultSet を読み取ります。
      パラメーター:
      sql - 実行する SQL クエリ
      pss - 準備されたステートメントに値を設定する方法を知っているコールバック。これが null の場合、SQL にはバインドパラメーターが含まれないと見なされます。バインドパラメーターがない場合でも、このコールバックを使用してフェッチサイズやその他のパフォーマンスオプションを設定できます。
      rch - 結果を 1 行ずつ抽出するコールバック
      例外:
      DataAccessException - クエリが失敗した場合
    • query

      void query(StringSE sql, ObjectSE[] args, int[] argTypes, RowCallbackHandler rch) throws DataAccessException
      指定された SQL にクエリを実行して、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowCallbackHandler で ResultSet を行ごとに読み取ります。
      パラメーター:
      sql - 実行する SQL クエリ
      args - クエリにバインドする引数
      argTypes - 引数の SQL 型 (java.sql.Types からの定数)
      rch - 結果を 1 行ずつ抽出するコールバック
      例外:
      DataAccessException - クエリが失敗した場合
      関連事項:
    • query

      使用すべきではありません。
      指定された SQL にクエリを実行して、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowCallbackHandler で ResultSet を行ごとに読み取ります。
      パラメーター:
      sql - 実行する SQL クエリ
      args - クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示す SqlParameterValue オブジェクトを含めることもできます。
      rch - 結果を 1 行ずつ抽出するコールバック
      例外:
      DataAccessException - クエリが失敗した場合
    • query

      void query(StringSE sql, RowCallbackHandler rch, @Nullable ObjectSE... args) throws DataAccessException
      指定された SQL にクエリを実行して、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowCallbackHandler で ResultSet を行ごとに読み取ります。
      パラメーター:
      sql - 実行する SQL クエリ
      rch - 結果を 1 行ずつ抽出するコールバック
      args - クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示す SqlParameterValue オブジェクトを含めることもできます。
      例外:
      DataAccessException - クエリが失敗した場合
      導入:
      3.0.1
    • query

      <T> ListSE<T> query(PreparedStatementCreator psc, RowMapper<T> rowMapper) throws DataAccessException
      準備済みステートメントを使用して照会し、RowMapper を介して各行を結果オブジェクトにマッピングします。

      PreparedStatementCreator は、直接実装するか、PreparedStatementCreatorFactory を介して構成できます。

      パラメーター:
      psc - 接続を指定して PreparedStatement を作成するコールバック
      rowMapper - 行ごとに 1 つのオブジェクトをマップするコールバック
      戻り値:
      マッピングされたオブジェクトを含む結果リスト
      例外:
      DataAccessException - 問題がある場合
      関連事項:
    • query

      <T> ListSE<T> query(StringSE sql, @Nullable PreparedStatementSetter pss, RowMapper<T> rowMapper) throws DataAccessException
      与えられた SQL をクエリして、SQL から準備されたステートメントを作成し、RowMapper を介して各行を結果オブジェクトにマッピングして、クエリに値をバインドする方法を知っている PreparedStatementSetter 実装を作成します。
      パラメーター:
      sql - 実行する SQL クエリ
      pss - 準備されたステートメントに値を設定する方法を知っているコールバック。これが null の場合、SQL にはバインドパラメーターが含まれないと見なされます。バインドパラメーターがない場合でも、このコールバックを使用してフェッチサイズやその他のパフォーマンスオプションを設定できます。
      rowMapper - 行ごとに 1 つのオブジェクトをマップするコールバック
      戻り値:
      マッピングされたオブジェクトを含む結果リスト
      例外:
      DataAccessException - クエリが失敗した場合
    • query

      <T> ListSE<T> query(StringSE sql, ObjectSE[] args, int[] argTypes, RowMapper<T> rowMapper) throws DataAccessException
      指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して各行を結果オブジェクトにマッピングします。
      パラメーター:
      sql - 実行する SQL クエリ
      args - クエリにバインドする引数
      argTypes - 引数の SQL 型 (java.sql.Types からの定数)
      rowMapper - 行ごとに 1 つのオブジェクトをマップするコールバック
      戻り値:
      マッピングされたオブジェクトを含む結果リスト
      例外:
      DataAccessException - クエリが失敗した場合
      関連事項:
    • query

      @DeprecatedSE <T> ListSE<T> query(StringSE sql, @Nullable ObjectSE[] args, RowMapper<T> rowMapper) throws DataAccessException
      使用すべきではありません。
      5.3 現在、query(String, RowMapper, Object...) を推奨
      指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して各行を結果オブジェクトにマッピングします。
      パラメーター:
      sql - 実行する SQL クエリ
      args - クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示す SqlParameterValue オブジェクトを含めることもできます。
      rowMapper - 行ごとに 1 つのオブジェクトをマップするコールバック
      戻り値:
      マッピングされたオブジェクトを含む結果リスト
      例外:
      DataAccessException - クエリが失敗した場合
    • query

      <T> ListSE<T> query(StringSE sql, RowMapper<T> rowMapper, @Nullable ObjectSE... args) throws DataAccessException
      指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して各行を結果オブジェクトにマッピングします。
      パラメーター:
      sql - 実行する SQL クエリ
      rowMapper - 行ごとに 1 つのオブジェクトをマップするコールバック
      args - クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示す SqlParameterValue オブジェクトを含めることもできます。
      戻り値:
      マッピングされたオブジェクトを含む結果リスト
      例外:
      DataAccessException - クエリが失敗した場合
      導入:
      3.0.1
    • queryForStream

      <T> StreamSE<T> queryForStream(PreparedStatementCreator psc, RowMapper<T> rowMapper) throws DataAccessException
      準備済みステートメントを使用してクエリを実行し、各行を RowMapper を介して結果オブジェクトにマッピングし、それを反復可能でクローズ可能なストリームに変換します。

      PreparedStatementCreator は、直接実装するか、PreparedStatementCreatorFactory を介して構成できます。

      パラメーター:
      psc - 接続を指定して PreparedStatement を作成するコールバック
      rowMapper - 行ごとに 1 つのオブジェクトをマップするコールバック
      戻り値:
      マップされたオブジェクトを含む結果のストリーム。完全に処理されたら閉じる必要があります (たとえば、try-with-resources 句を通して)
      例外:
      DataAccessException - 問題がある場合
      導入:
      5.3
      関連事項:
    • queryForStream

      <T> StreamSE<T> queryForStream(StringSE sql, @Nullable PreparedStatementSetter pss, RowMapper<T> rowMapper) throws DataAccessException
      指定された SQL をクエリして、SQL とクエリに値をバインドする方法を知っている PreparedStatementSetter 実装から準備済みステートメントを作成し、各行を RowMapper を介して結果オブジェクトにマッピングし、反復可能でクローズ可能なストリームに変換します。
      パラメーター:
      sql - 実行する SQL クエリ
      pss - 準備されたステートメントに値を設定する方法を知っているコールバック。これが null の場合、SQL にはバインドパラメーターが含まれないと見なされます。バインドパラメーターがない場合でも、このコールバックを使用してフェッチサイズやその他のパフォーマンスオプションを設定できます。
      rowMapper - 行ごとに 1 つのオブジェクトをマップするコールバック
      戻り値:
      マップされたオブジェクトを含む結果のストリーム。完全に処理されたら閉じる必要があります (たとえば、try-with-resources 句を通して)
      例外:
      DataAccessException - クエリが失敗した場合
      導入:
      5.3
    • queryForStream

      <T> StreamSE<T> queryForStream(StringSE sql, RowMapper<T> rowMapper, @Nullable ObjectSE... args) throws DataAccessException
      指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、各行を RowMapper を介して結果オブジェクトにマッピングし、それを反復可能でクローズ可能なストリームに変換します。
      パラメーター:
      sql - 実行する SQL クエリ
      rowMapper - 行ごとに 1 つのオブジェクトをマップするコールバック
      args - クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示す SqlParameterValue オブジェクトを含めることもできます。
      戻り値:
      マップされたオブジェクトを含む結果のストリーム。完全に処理されたら閉じる必要があります (たとえば、try-with-resources 句を通して)
      例外:
      DataAccessException - クエリが失敗した場合
      導入:
      5.3
    • queryForObject

      @Nullable <T> T queryForObject(StringSE sql, ObjectSE[] args, int[] argTypes, RowMapper<T> rowMapper) throws DataAccessException
      指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して単一の結果行を結果オブジェクトにマッピングします。
      パラメーター:
      sql - 実行する SQL クエリ
      args - クエリにバインドする引数 (対応する SQL 型を推測するために PreparedStatement に任せる)
      argTypes - 引数の SQL 型 (java.sql.Types からの定数)
      rowMapper - 行ごとに 1 つのオブジェクトをマップするコールバック
      戻り値:
      単一のマッピングされたオブジェクト (指定された RowMapper が null を返した場合、null になることがあります)
      例外:
      IncorrectResultSizeDataAccessException - クエリが正確に 1 行を返さない場合
      DataAccessException - クエリが失敗した場合
    • queryForObject

      @DeprecatedSE @Nullable <T> T queryForObject(StringSE sql, @Nullable ObjectSE[] args, RowMapper<T> rowMapper) throws DataAccessException
      使用すべきではありません。
      指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して単一の結果行を結果オブジェクトにマッピングします。
      パラメーター:
      sql - 実行する SQL クエリ
      args - クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示す SqlParameterValue オブジェクトを含めることもできます。
      rowMapper - 行ごとに 1 つのオブジェクトをマップするコールバック
      戻り値:
      単一のマッピングされたオブジェクト (指定された RowMapper が null を返した場合、null になることがあります)
      例外:
      IncorrectResultSizeDataAccessException - クエリが正確に 1 行を返さない場合
      DataAccessException - クエリが失敗した場合
    • queryForObject

      @Nullable <T> T queryForObject(StringSE sql, RowMapper<T> rowMapper, @Nullable ObjectSE... args) throws DataAccessException
      指定された SQL をクエリして、SQL から準備されたステートメントとクエリにバインドする引数のリストを作成し、RowMapper を介して単一の結果行を結果オブジェクトにマッピングします。
      パラメーター:
      sql - 実行する SQL クエリ
      rowMapper - 行ごとに 1 つのオブジェクトをマップするコールバック
      args - クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示す SqlParameterValue オブジェクトを含めることもできます。
      戻り値:
      単一のマッピングされたオブジェクト (指定された RowMapper が null を返した場合、null になることがあります)
      例外:
      IncorrectResultSizeDataAccessException - クエリが正確に 1 行を返さない場合
      DataAccessException - クエリが失敗した場合
      導入:
      3.0.1
    • queryForObject

      @Nullable <T> T queryForObject(StringSE sql, ObjectSE[] args, int[] argTypes, ClassSE<T> requiredType) throws DataAccessException
      指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果オブジェクトを期待します。

      クエリは、単一の行 / 単一列クエリであることが期待されています。返された結果は、対応するオブジェクト型に直接マップされます。

      パラメーター:
      sql - 実行する SQL クエリ
      args - クエリにバインドする引数
      argTypes - 引数の SQL 型 (java.sql.Types からの定数)
      requiredType - 結果オブジェクトが一致すると予想される型
      戻り値:
      必要な型の結果オブジェクト、または SQL NULL の場合は null 
      例外:
      IncorrectResultSizeDataAccessException - クエリが正確に 1 行を返さない場合
      IncorrectResultSetColumnCountException - クエリが単一の列を含む行を返さない場合
      DataAccessException - クエリが失敗した場合
      関連事項:
    • queryForObject

      @DeprecatedSE @Nullable <T> T queryForObject(StringSE sql, @Nullable ObjectSE[] args, ClassSE<T> requiredType) throws DataAccessException
      使用すべきではありません。
      指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果オブジェクトを期待します。

      クエリは、単一の行 / 単一列クエリであることが期待されています。返された結果は、対応するオブジェクト型に直接マップされます。

      パラメーター:
      sql - 実行する SQL クエリ
      args - クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示す SqlParameterValue オブジェクトを含めることもできます。
      requiredType - 結果オブジェクトが一致すると予想される型
      戻り値:
      必要な型の結果オブジェクト、または SQL NULL の場合は null 
      例外:
      IncorrectResultSizeDataAccessException - クエリが正確に 1 行を返さない場合
      IncorrectResultSetColumnCountException - クエリが単一の列を含む行を返さない場合
      DataAccessException - クエリが失敗した場合
      関連事項:
    • queryForObject

      @Nullable <T> T queryForObject(StringSE sql, ClassSE<T> requiredType, @Nullable ObjectSE... args) throws DataAccessException
      指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果オブジェクトを期待します。

      クエリは、単一の行 / 単一列クエリであることが期待されています。返された結果は、対応するオブジェクト型に直接マップされます。

      パラメーター:
      sql - 実行する SQL クエリ
      requiredType - 結果オブジェクトが一致すると予想される型
      args - クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示す SqlParameterValue オブジェクトを含めることもできます。
      戻り値:
      必要な型の結果オブジェクト、または SQL NULL の場合は null 
      例外:
      IncorrectResultSizeDataAccessException - クエリが正確に 1 行を返さない場合
      IncorrectResultSetColumnCountException - クエリが単一の列を含む行を返さない場合
      DataAccessException - クエリが失敗した場合
      導入:
      3.0.1
      関連事項:
    • queryForMap

      MapSE<StringSE,ObjectSE> queryForMap(StringSE sql, ObjectSE[] args, int[] argTypes) throws DataAccessException
      指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果マップを期待します。

      クエリは単一行クエリであることが期待されています。結果行はマップにマップされます(列名をキーとして使用して、各列に 1 つのエントリ)。

      パラメーター:
      sql - 実行する SQL クエリ
      args - クエリにバインドする引数
      argTypes - 引数の SQL 型 (java.sql.Types からの定数)
      戻り値:
      結果マップ (列名をキーとして、列ごとに 1 つのエントリ)
      例外:
      IncorrectResultSizeDataAccessException - クエリが正確に 1 行を返さない場合
      DataAccessException - クエリが失敗した場合
      関連事項:
    • queryForMap

      指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果マップを期待します。

      このインターフェースで定義されている queryForMap メソッドは、ドメインモデルがない場合に適しています。それ以外の場合は、queryForObject メソッドのいずれかを使用することを検討してください。

      クエリは単一行クエリであることが期待されています。結果行はマップにマップされます(列名をキーとして使用して、各列に 1 つのエントリ)。

      パラメーター:
      sql - 実行する SQL クエリ
      args - クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示す SqlParameterValue オブジェクトを含めることもできます。
      戻り値:
      結果マップ (列名をキーとして使用して、列ごとに 1 つのエントリ)
      例外:
      IncorrectResultSizeDataAccessException - クエリが正確に 1 行を返さない場合
      DataAccessException - クエリが失敗した場合
      関連事項:
    • queryForList

      <T> ListSE<T> queryForList(StringSE sql, ObjectSE[] args, int[] argTypes, ClassSE<T> elementType) throws DataAccessException
      指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。

      結果は、結果オブジェクトのリスト(各行に 1 つのエントリ)にマップされ、各オブジェクトは指定された要素型に一致します。

      パラメーター:
      sql - 実行する SQL クエリ
      args - クエリにバインドする引数
      argTypes - 引数の SQL 型 (java.sql.Types からの定数)
      elementType - 結果リスト内の必須型の要素 (たとえば、Integer.class)
      戻り値:
      指定された要素型に一致するオブジェクトのリスト
      例外:
      DataAccessException - クエリが失敗した場合
      関連事項:
    • queryForList

      @DeprecatedSE <T> ListSE<T> queryForList(StringSE sql, @Nullable ObjectSE[] args, ClassSE<T> elementType) throws DataAccessException
      使用すべきではありません。
      指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。

      結果は、結果オブジェクトのリスト(各行に 1 つのエントリ)にマップされ、各オブジェクトは指定された要素型に一致します。

      パラメーター:
      sql - 実行する SQL クエリ
      args - クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示す SqlParameterValue オブジェクトを含めることもできます。
      elementType - 結果リスト内の必須型の要素 (たとえば、Integer.class)
      戻り値:
      指定された要素型に一致するオブジェクトのリスト
      例外:
      DataAccessException - クエリが失敗した場合
      関連事項:
    • queryForList

      <T> ListSE<T> queryForList(StringSE sql, ClassSE<T> elementType, @Nullable ObjectSE... args) throws DataAccessException
      指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。

      結果は、結果オブジェクトのリスト(各行に 1 つのエントリ)にマップされ、各オブジェクトは指定された要素型に一致します。

      パラメーター:
      sql - 実行する SQL クエリ
      elementType - 結果リスト内の必須型の要素 (たとえば、Integer.class)
      args - クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示す SqlParameterValue オブジェクトを含めることもできます。
      戻り値:
      指定された要素型に一致するオブジェクトのリスト
      例外:
      DataAccessException - クエリが失敗した場合
      導入:
      3.0.1
      関連事項:
    • queryForList

      ListSE<MapSE<StringSE,ObjectSE>> queryForList(StringSE sql, ObjectSE[] args, int[] argTypes) throws DataAccessException
      指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。

      結果は、マップのリスト(行ごとに 1 つのエントリ)にマップされます(列名をキーとして使用して、列ごとに 1 つのエントリ)。リスト内の各要素は、このインターフェースの queryForMap メソッドによって返される形式になります。

      パラメーター:
      sql - 実行する SQL クエリ
      args - クエリにバインドする引数
      argTypes - 引数の SQL 型 (java.sql.Types からの定数)
      戻り値:
      行ごとにマップを含むリスト
      例外:
      DataAccessException - クエリが失敗した場合
      関連事項:
    • queryForList

      指定された SQL をクエリし、SQL から準備されたステートメントと、クエリにバインドする引数のリストを作成し、結果リストを期待します。

      結果は、マップのリスト(行ごとに 1 つのエントリ)にマップされます(列名をキーとして使用して、列ごとに 1 つのエントリ)。リスト内の各要素は、このインターフェースの queryForMap メソッドによって返される形式になります。

      パラメーター:
      sql - 実行する SQL クエリ
      args - クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示す SqlParameterValue オブジェクトを含めることもできます。
      戻り値:
      行ごとにマップを含むリスト
      例外:
      DataAccessException - クエリが失敗した場合
      関連事項:
    • queryForRowSet

      SqlRowSet queryForRowSet(StringSE sql, ObjectSE[] args, int[] argTypes) throws DataAccessException
      指定された SQL を照会して、SQL から準備済みステートメントを作成し、SqlRowSet を想定して、照会にバインドする引数のリストを作成します。

      結果は SqlRowSet にマップされ、切断された方法でデータを保持します。このラッパーは、スローされた SQLException を変換します。

      デフォルトの実装では、実行時に JDBC RowSet サポートが使用可能である必要があることに注意してください。デフォルトでは、標準の JDBC CachedRowSet が使用されます。

      パラメーター:
      sql - 実行する SQL クエリ
      args - クエリにバインドする引数
      argTypes - 引数の SQL 型 (java.sql.Types からの定数)
      戻り値:
      SqlRowSet 表現 (おそらく javax.sql.rowset.CachedRowSet のラッパー)
      例外:
      DataAccessException - クエリの実行に問題がある場合
      関連事項:
    • queryForRowSet

      SqlRowSet queryForRowSet(StringSE sql, @Nullable ObjectSE... args) throws DataAccessException
      指定された SQL を照会して、SQL から準備済みステートメントを作成し、SqlRowSet を想定して、照会にバインドする引数のリストを作成します。

      結果は SqlRowSet にマップされ、切断された方法でデータを保持します。このラッパーは、スローされた SQLException を変換します。

      デフォルトの実装では、実行時に JDBC RowSet サポートが使用可能である必要があることに注意してください。デフォルトでは、標準の JDBC CachedRowSet が使用されます。

      パラメーター:
      sql - 実行する SQL クエリ
      args - クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示す SqlParameterValue オブジェクトを含めることもできます。
      戻り値:
      SqlRowSet 表現 (おそらく javax.sql.rowset.CachedRowSet のラッパー)
      例外:
      DataAccessException - クエリの実行に問題がある場合
      関連事項:
    • update

      PreparedStatementCreator を使用して単一の SQL 更新操作(挿入、更新、削除ステートメントなど)を発行し、SQL および必要なパラメーターを提供します。

      PreparedStatementCreator は、直接実装するか、PreparedStatementCreatorFactory を介して構成できます。

      パラメーター:
      psc - SQL および必要なパラメーターを提供するコールバック
      戻り値:
      影響を受ける行の数
      例外:
      DataAccessException - 更新の発行に問題がある場合
      関連事項:
    • update

      int update(PreparedStatementCreator psc, KeyHolder generatedKeyHolder) throws DataAccessException
      PreparedStatementCreator を使用して更新ステートメントを発行し、SQL および必要なパラメーターを提供します。生成されたキーは、指定された KeyHolder に配置されます。

      指定された PreparedStatementCreator は、生成されたキーの抽出をアクティブ化するステートメントを作成する必要があることに注意してください(JDBC 3.0 機能)。これは、直接または PreparedStatementCreatorFactory を使用して行うことができます。

      この方法では、JDBC ドライバーで生成されたキーのサポートが必要です。

      パラメーター:
      psc - SQL および必要なパラメーターを提供するコールバック
      generatedKeyHolder - 生成されたキーを保持する KeyHolder
      戻り値:
      影響を受ける行の数
      例外:
      DataAccessException - 更新の発行に問題がある場合
      関連事項:
    • update

      PreparedStatementSetter を使用して更新ステートメントを発行し、指定された SQL でバインドパラメーターを設定します。この方法は PreparedStatement を作成するため、PreparedStatementCreator を使用するよりも簡単です。PreparedStatementSetter はパラメーターを設定するだけです。
      パラメーター:
      sql - バインドパラメーターを含む SQL
      pss - バインドパラメーターを設定するヘルパー。これが null の場合、静的 SQL で更新を実行します。
      戻り値:
      影響を受ける行の数
      例外:
      DataAccessException - 更新の発行に問題がある場合
    • update

      int update(StringSE sql, ObjectSE[] args, int[] argTypes) throws DataAccessException
      準備されたステートメントを介して、単一の SQL 更新操作(挿入、更新、削除ステートメントなど)を発行し、指定された引数をバインドします。
      パラメーター:
      sql - バインドパラメーターを含む SQL
      args - クエリにバインドする引数
      argTypes - 引数の SQL 型 (java.sql.Types からの定数)
      戻り値:
      影響を受ける行の数
      例外:
      DataAccessException - 更新の発行に問題がある場合
      関連事項:
    • update

      int update(StringSE sql, @Nullable ObjectSE... args) throws DataAccessException
      準備されたステートメントを介して、単一の SQL 更新操作(挿入、更新、削除ステートメントなど)を発行し、指定された引数をバインドします。
      パラメーター:
      sql - バインドパラメーターを含む SQL
      args - クエリにバインドする引数(対応する SQL 型は PreparedStatement が推測)。引数値だけでなく、SQL 型とオプションでスケールも示す SqlParameterValue オブジェクトを含めることもできます。
      戻り値:
      影響を受ける行の数
      例外:
      DataAccessException - 更新の発行に問題がある場合
    • batchUpdate

      int[] batchUpdate(StringSE sql, BatchPreparedStatementSetter pss) throws DataAccessException
      単一の PreparedStatement で複数の更新ステートメントを発行し、バッチ更新と BatchPreparedStatementSetter を使用して値を設定します。

      JDBC ドライバーがバッチ更新をサポートしていない場合、単一の PreparedStatement で個別の更新にフォールバックします。

      パラメーター:
      sql - 再利用される PreparedStatement を定義します。バッチ内のすべてのステートメントは同じ SQL を使用します。
      pss - このメソッドによって作成された PreparedStatement にパラメーターを設定するオブジェクト
      戻り値:
      各ステートメントの影響を受ける行数の配列 (Statement.SUCCESS_NO_INFOSE/Statement.EXECUTE_FAILEDSE などの影響を受ける行に対して特別な JDBC 定義の負の値が含まれる場合もあります)
      例外:
      DataAccessException - 更新の発行に問題がある場合
    • batchUpdate

      int[] batchUpdate(PreparedStatementCreator psc, BatchPreparedStatementSetter pss, KeyHolder generatedKeyHolder) throws DataAccessException
      バッチ更新と BatchPreparedStatementSetter を使用して値を設定し、単一の PreparedStatement で複数の更新ステートメントを発行します。生成されたキーは、指定された KeyHolder に配置されます。

      指定された PreparedStatementCreator は、生成されたキーの抽出をアクティブ化するステートメントを作成する必要があることに注意してください(JDBC 3.0 機能)。これは、直接または PreparedStatementCreatorFactory を使用して行うことができます。

      この方法では、JDBC ドライバーで生成されたキーのサポートが必要です。JDBC ドライバーがバッチ更新をサポートしていない場合は、単一の PreparedStatement での個別の更新にフォールバックします。

      パラメーター:
      psc - 接続を指定して PreparedStatement を作成するコールバック
      pss - このメソッドによって作成された PreparedStatement にパラメーターを設定するオブジェクト
      generatedKeyHolder - 生成されたキーを保持する KeyHolder
      戻り値:
      各ステートメントの影響を受ける行数の配列 (Statement.SUCCESS_NO_INFOSE/Statement.EXECUTE_FAILEDSE などの影響を受ける行に対して特別な JDBC 定義の負の値が含まれる場合もあります)
      例外:
      DataAccessException - 更新の発行に問題がある場合
      導入:
      6.1
      関連事項:
    • batchUpdate

      int[] batchUpdate(StringSE sql, ListSE<ObjectSE[]> batchArgs) throws DataAccessException
      提供された引数のバッチで提供された SQL ステートメントを使用して、バッチを実行します。
      パラメーター:
      sql - 実行する SQL ステートメント
      batchArgs - クエリの引数のバッチを含むオブジェクト配列のリスト
      戻り値:
      バッチ内の各更新によって影響を受ける行の数を含む配列 (Statement.SUCCESS_NO_INFOSE/Statement.EXECUTE_FAILEDSE などの影響を受ける行に対して特別な JDBC 定義の負の値が含まれる場合もあります)
      例外:
      DataAccessException - 更新の発行に問題がある場合
    • batchUpdate

      int[] batchUpdate(StringSE sql, ListSE<ObjectSE[]> batchArgs, int[] argTypes) throws DataAccessException
      提供された引数のバッチで提供された SQL ステートメントを使用して、バッチを実行します。
      パラメーター:
      sql - 実行する SQL ステートメント。
      batchArgs - クエリの引数のバッチを含むオブジェクト配列のリスト
      argTypes - 引数の SQL 型 (java.sql.Types からの定数)
      戻り値:
      バッチ内の各更新によって影響を受ける行の数を含む配列 (Statement.SUCCESS_NO_INFOSE/Statement.EXECUTE_FAILEDSE などの影響を受ける行に対して特別な JDBC 定義の負の値が含まれる場合もあります)
      例外:
      DataAccessException - 更新の発行に問題がある場合
    • batchUpdate

      <T> int[][] batchUpdate(StringSE sql, CollectionSE<T> batchArgs, int batchSize, ParameterizedPreparedStatementSetter<T> pss) throws DataAccessException
      指定された一連の引数を含む指定された SQL ステートメントを使用して、複数のバッチを実行します。引数の値は ParameterizedPreparedStatementSetter を使用して設定されます。各バッチのサイズは 'batchSize' で示されるサイズである必要があります。
      パラメーター:
      sql - 実行する SQL ステートメント。
      batchArgs - クエリの引数のバッチを含むオブジェクト配列のリスト
      batchSize - バッチサイズ
      pss - 使用する ParameterizedPreparedStatementSetter
      戻り値:
      バッチごとに、バッチ内の各更新によって影響を受ける行の数を含む別の配列を含む配列 (Statement.SUCCESS_NO_INFOSE/Statement.EXECUTE_FAILEDSE などの影響を受ける行に対して特別な JDBC 定義の負の値が含まれる場合もあります)
      例外:
      DataAccessException - 更新の発行に問題がある場合
      導入:
      3.1
    • execute

      JDBC CallableStatement で動作するコールバックアクションとして実装された JDBC データアクセス操作を実行します。これにより、Spring のマネージ JDBC 環境内で、単一のステートメントに任意のデータアクセス操作を実装できます。つまり、Spring 管理トランザクションに参加し、JDBC SQLException を Spring の DataAccessException 階層に変換します。

      コールバックアクションは、ドメインオブジェクトまたはドメインオブジェクトのコレクションなどの結果オブジェクトを返すことができます。

      パラメーター:
      csc - 接続を指定して CallableStatement を作成するコールバック
      action - アクションを指定するコールバック
      戻り値:
      アクションによって返された結果オブジェクト。ない場合は null 
      例外:
      DataAccessException - 問題がある場合
    • execute

      @Nullable <T> T execute(StringSE callString, CallableStatementCallback<T> action) throws DataAccessException
      JDBC CallableStatement で動作するコールバックアクションとして実装された JDBC データアクセス操作を実行します。これにより、Spring のマネージ JDBC 環境内で、単一のステートメントに任意のデータアクセス操作を実装できます。つまり、Spring 管理トランザクションに参加し、JDBC SQLException を Spring の DataAccessException 階層に変換します。

      コールバックアクションは、ドメインオブジェクトまたはドメインオブジェクトのコレクションなどの結果オブジェクトを返すことができます。

      パラメーター:
      callString - 実行する SQL 呼び出し文字列
      action - アクションを指定するコールバック
      戻り値:
      アクションによって返された結果オブジェクト。ない場合は null 
      例外:
      DataAccessException - 問題がある場合
    • call

      CallableStatementCreator を使用して SQL 呼び出しを実行し、SQL および必要なパラメーターを提供します。
      パラメーター:
      csc - SQL および必要なパラメーターを提供するコールバック
      declaredParameters - 宣言された SqlParameter オブジェクトのリスト
      戻り値:
      抽出されたパラメーターのマップ
      例外:
      DataAccessException - 更新の発行に問題がある場合