Class AbstractInterruptibleBatchPreparedStatementSetter
java.lang.Object
org.springframework.jdbc.core.support.AbstractInterruptibleBatchPreparedStatementSetter
- All Implemented Interfaces:
BatchPreparedStatementSetter,InterruptibleBatchPreparedStatementSetter
public abstract class AbstractInterruptibleBatchPreparedStatementSetter
extends Object
implements InterruptibleBatchPreparedStatementSetter
Abstract implementation of the
InterruptibleBatchPreparedStatementSetter
interface, combining the check for available values and setting of those
into a single callback method setValuesIfAvailable(java.sql.PreparedStatement, int).- Since:
- 2.0
- Author:
- Juergen Hoeller
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionintThis implementation returnsInteger.MAX_VALUE.final booleanisBatchExhausted(int i) This implementation return this instance's current exhaustion flag.final voidsetValues(PreparedStatement ps, int i) This implementation callssetValuesIfAvailable(java.sql.PreparedStatement, int)and sets this instance's exhaustion flag accordingly.protected abstract booleansetValuesIfAvailable(PreparedStatement ps, int i) Check for available values and set them on the given PreparedStatement.
-
Constructor Details
-
AbstractInterruptibleBatchPreparedStatementSetter
public AbstractInterruptibleBatchPreparedStatementSetter()
-
-
Method Details
-
setValues
This implementation callssetValuesIfAvailable(java.sql.PreparedStatement, int)and sets this instance's exhaustion flag accordingly.- Specified by:
setValuesin interfaceBatchPreparedStatementSetter- Parameters:
ps- the PreparedStatement to invoke setter methods oni- index of the statement we're issuing in the batch, starting from 0- Throws:
SQLException- if an SQLException is encountered (i.e. there is no need to catch SQLException)
-
isBatchExhausted
public final boolean isBatchExhausted(int i) This implementation return this instance's current exhaustion flag.- Specified by:
isBatchExhaustedin interfaceInterruptibleBatchPreparedStatementSetter- Parameters:
i- index of the statement we're issuing in the batch, starting from 0- Returns:
- whether the batch is already exhausted
- See Also:
-
getBatchSize
public int getBatchSize()This implementation returnsInteger.MAX_VALUE. Can be overridden in subclasses to lower the maximum batch size.- Specified by:
getBatchSizein interfaceBatchPreparedStatementSetter- Returns:
- the number of statements in the batch
-
setValuesIfAvailable
Check for available values and set them on the given PreparedStatement. If no values are available anymore, returnfalse.- Parameters:
ps- the PreparedStatement we'll invoke setter methods oni- index of the statement we're issuing in the batch, starting from 0- Returns:
- whether there were values to apply (that is, whether the applied parameters should be added to the batch and this method should be called for a further iteration)
- Throws:
SQLException- if an SQLException is encountered (i.e. there is no need to catch SQLException)
-