Package org.springframework.jdbc.core
Class PreparedStatementCreatorFactory
- java.lang.Object
- org.springframework.jdbc.core.PreparedStatementCreatorFactory
public class PreparedStatementCreatorFactory extends Object
Helper class that efficiently creates multiplePreparedStatementCreator
objects with different parameters based on a SQL statement and a single set of parameter declarations.- Author:
- Rod Johnson, Thomas Risberg, Juergen Hoeller
Constructor Summary
Constructors Constructor Description PreparedStatementCreatorFactory(String sql)
Create a new factory.PreparedStatementCreatorFactory(String sql, int... types)
Create a new factory with the given SQL and JDBC types.PreparedStatementCreatorFactory(String sql, List<SqlParameter> declaredParameters)
Create a new factory with the given SQL and parameters.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addParameter(SqlParameter param)
Add a new declared parameter.PreparedStatementCreator
newPreparedStatementCreator(Object[] params)
Return a new PreparedStatementCreator for the given parameters.PreparedStatementCreator
newPreparedStatementCreator(String sqlToUse, Object[] params)
Return a new PreparedStatementCreator for the given parameters.PreparedStatementCreator
newPreparedStatementCreator(List<?> params)
Return a new PreparedStatementCreator for the given parameters.PreparedStatementSetter
newPreparedStatementSetter(Object[] params)
Return a new PreparedStatementSetter for the given parameters.PreparedStatementSetter
newPreparedStatementSetter(List<?> params)
Return a new PreparedStatementSetter for the given parameters.void
setGeneratedKeysColumnNames(String... names)
Set the column names of the auto-generated keys.void
setNativeJdbcExtractor(NativeJdbcExtractor nativeJdbcExtractor)
Specify the NativeJdbcExtractor to use for unwrapping PreparedStatements, if any.void
setResultSetType(int resultSetType)
Set whether to use prepared statements that return a specific type of ResultSet.void
setReturnGeneratedKeys(boolean returnGeneratedKeys)
Set whether prepared statements should be capable of returning auto-generated keys.void
setUpdatableResults(boolean updatableResults)
Set whether to use prepared statements capable of returning updatable ResultSets.
Constructor Detail
PreparedStatementCreatorFactory
public PreparedStatementCreatorFactory(String sql)
Create a new factory. Will need to add parameters via theaddParameter(org.springframework.jdbc.core.SqlParameter)
method or have no parameters.- Parameters:
sql
- the SQL statement to execute
PreparedStatementCreatorFactory
public PreparedStatementCreatorFactory(String sql, int... types)
Create a new factory with the given SQL and JDBC types.- Parameters:
sql
- the SQL statement to executetypes
- int array of JDBC types
PreparedStatementCreatorFactory
public PreparedStatementCreatorFactory(String sql, List<SqlParameter> declaredParameters)
Create a new factory with the given SQL and parameters.- Parameters:
sql
- the SQL statement to executedeclaredParameters
- list ofSqlParameter
objects
Method Detail
addParameter
public void addParameter(SqlParameter param)
Add a new declared parameter.Order of parameter addition is significant.
- Parameters:
param
- the parameter to add to the list of declared parameters
setResultSetType
public void setResultSetType(int resultSetType)
Set whether to use prepared statements that return a specific type of ResultSet.- Parameters:
resultSetType
- the ResultSet type- See Also:
ResultSet.TYPE_FORWARD_ONLY
,ResultSet.TYPE_SCROLL_INSENSITIVE
,ResultSet.TYPE_SCROLL_SENSITIVE
setUpdatableResults
public void setUpdatableResults(boolean updatableResults)
Set whether to use prepared statements capable of returning updatable ResultSets.
setReturnGeneratedKeys
public void setReturnGeneratedKeys(boolean returnGeneratedKeys)
Set whether prepared statements should be capable of returning auto-generated keys.
setGeneratedKeysColumnNames
public void setGeneratedKeysColumnNames(String... names)
Set the column names of the auto-generated keys.
setNativeJdbcExtractor
public void setNativeJdbcExtractor(NativeJdbcExtractor nativeJdbcExtractor)
Specify the NativeJdbcExtractor to use for unwrapping PreparedStatements, if any.
newPreparedStatementSetter
public PreparedStatementSetter newPreparedStatementSetter(List<?> params)
Return a new PreparedStatementSetter for the given parameters.- Parameters:
params
- list of parameters (may benull
)
newPreparedStatementSetter
public PreparedStatementSetter newPreparedStatementSetter(Object[] params)
Return a new PreparedStatementSetter for the given parameters.- Parameters:
params
- the parameter array (may benull
)
newPreparedStatementCreator
public PreparedStatementCreator newPreparedStatementCreator(List<?> params)
Return a new PreparedStatementCreator for the given parameters.- Parameters:
params
- list of parameters (may benull
)
newPreparedStatementCreator
public PreparedStatementCreator newPreparedStatementCreator(Object[] params)
Return a new PreparedStatementCreator for the given parameters.- Parameters:
params
- the parameter array (may benull
)
newPreparedStatementCreator
public PreparedStatementCreator newPreparedStatementCreator(String sqlToUse, Object[] params)
Return a new PreparedStatementCreator for the given parameters.- Parameters:
sqlToUse
- the actual SQL statement to use (if different from the factory's, for example because of named parameter expanding)params
- the parameter array (may benull
)