org.springframework.jdbc.core

## Interface BatchPreparedStatementSetter

- All Known Subinterfaces:
    InterruptibleBatchPreparedStatementSetter
  All Known Implementing Classes:
    AbstractInterruptibleBatchPreparedStatementSetter

      public interface BatchPreparedStatementSetter

  Batch update callback interface used by the `JdbcTemplate` class.

  This interface sets values on a `PreparedStatement` provided by the JdbcTemplate class, for each of a number of updates in a batch using the same SQL. Implementations are responsible for setting any necessary parameters. SQL with placeholders will already have been supplied.

  Implementations do not need to concern themselves with SQLExceptions that may be thrown from operations they attempt. The JdbcTemplate class will catch and handle SQLExceptions appropriately.

  Since:
    March 2, 2003
  Author:
    Rod Johnson
  See Also:
    `JdbcTemplate.batchUpdate(String, BatchPreparedStatementSetter)`, `InterruptibleBatchPreparedStatementSetter`

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getBatchSize()` Return the size of the batch.
    `void` | `setValues(PreparedStatement ps, int i)` Set parameter values on the given PreparedStatement.

- - ### Method Detail

    - #### setValues

          void setValues(PreparedStatement ps,
                         int i)
                  throws SQLException

      Set parameter values on the given PreparedStatement.
      Parameters:
        `ps` - the PreparedStatement to invoke setter methods on
        `i` - index of the statement we're issuing in the batch, starting from 0
      Throws:
        `SQLException` - if a SQLException is encountered (i.e. there is no need to catch SQLException)

    - #### getBatchSize

          int getBatchSize()

      Return the size of the batch.
      Returns:
        the number of statements in the batch