Spring Framework

org.springframework.jdbc.object
Class SqlCall

java.lang.Object
  extended by org.springframework.jdbc.object.RdbmsOperation
      extended by org.springframework.jdbc.object.SqlCall
All Implemented Interfaces:
InitializingBean
Direct Known Subclasses:
StoredProcedure

public abstract class SqlCall
extends RdbmsOperation

RdbmsOperation using a JdbcTemplate and representing a SQL-based call such as a stored procedure or a stored function.

Configures a CallableStatementCreatorFactory based on the declared parameters.

Author:
Rod Johnson, Thomas Risberg
See Also:
CallableStatementCreatorFactory

Field Summary
 
Fields inherited from class org.springframework.jdbc.object.RdbmsOperation
logger
 
Constructor Summary
SqlCall()
          Constructor to allow use as a JavaBean.
SqlCall(javax.sql.DataSource ds, java.lang.String sql)
          Create a new SqlCall object with SQL, but without parameters.
 
Method Summary
protected  void compileInternal()
          Overridden method to configure the CallableStatementCreatorFactory based on our declared parameters.
 java.lang.String getCallString()
          Get the call string.
 boolean isFunction()
          Return whether this call is for a function.
 boolean isSqlReadyForUse()
          Return whether the SQL can be used as is.
protected  CallableStatementCreator newCallableStatementCreator(java.util.Map<java.lang.String,?> inParams)
          Return a CallableStatementCreator to perform an operation with this parameters.
protected  CallableStatementCreator newCallableStatementCreator(ParameterMapper inParamMapper)
          Return a CallableStatementCreator to perform an operation with the parameters returned from this ParameterMapper.
protected  void onCompileInternal()
          Hook method that subclasses may override to react to compilation.
 void setFunction(boolean function)
          Set whether this call is for a function.
 void setSqlReadyForUse(boolean sqlReadyForUse)
          Set whether the SQL can be used as is.
 
Methods inherited from class org.springframework.jdbc.object.RdbmsOperation
afterPropertiesSet, allowsUnusedParameters, checkCompiled, compile, declareParameter, getDeclaredParameters, getGeneratedKeysColumnNames, getJdbcTemplate, getResultSetType, getSql, isCompiled, isReturnGeneratedKeys, isUpdatableResults, setDataSource, setFetchSize, setGeneratedKeysColumnNames, setJdbcTemplate, setMaxRows, setParameters, setQueryTimeout, setResultSetType, setReturnGeneratedKeys, setSql, setTypes, setUpdatableResults, supportsLobParameters, validateNamedParameters, validateParameters
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SqlCall

public SqlCall()
Constructor to allow use as a JavaBean. A DataSource, SQL and any parameters must be supplied before invoking the compile method and using this object.

See Also:
RdbmsOperation.setDataSource(javax.sql.DataSource), RdbmsOperation.setSql(java.lang.String), RdbmsOperation.compile()

SqlCall

public SqlCall(javax.sql.DataSource ds,
               java.lang.String sql)
Create a new SqlCall object with SQL, but without parameters. Must add parameters or settle with none.

Parameters:
ds - DataSource to obtain connections from
sql - SQL to execute
Method Detail

setFunction

public void setFunction(boolean function)
Set whether this call is for a function.


isFunction

public boolean isFunction()
Return whether this call is for a function.


setSqlReadyForUse

public void setSqlReadyForUse(boolean sqlReadyForUse)
Set whether the SQL can be used as is.


isSqlReadyForUse

public boolean isSqlReadyForUse()
Return whether the SQL can be used as is.


compileInternal

protected final void compileInternal()
Overridden method to configure the CallableStatementCreatorFactory based on our declared parameters.

Specified by:
compileInternal in class RdbmsOperation
See Also:
RdbmsOperation.compileInternal()

onCompileInternal

protected void onCompileInternal()
Hook method that subclasses may override to react to compilation. This implementation does nothing.


getCallString

public java.lang.String getCallString()
Get the call string.


newCallableStatementCreator

protected CallableStatementCreator newCallableStatementCreator(java.util.Map<java.lang.String,?> inParams)
Return a CallableStatementCreator to perform an operation with this parameters.

Parameters:
inParams - parameters. May be null.

newCallableStatementCreator

protected CallableStatementCreator newCallableStatementCreator(ParameterMapper inParamMapper)
Return a CallableStatementCreator to perform an operation with the parameters returned from this ParameterMapper.

Parameters:
inParamMapper - parametermapper. May not be null.

Spring Framework