org.springframework.jdbc.object
public class: SqlFunction [javadoc |
source]
java.lang.Object
org.springframework.jdbc.object.RdbmsOperation
org.springframework.jdbc.object.SqlOperation
org.springframework.jdbc.object.SqlQuery
org.springframework.jdbc.object.MappingSqlQueryWithParameters
org.springframework.jdbc.object.MappingSqlQuery
org.springframework.jdbc.object.SqlFunction
All Implemented Interfaces:
InitializingBean
SQL "function" wrapper for a query that returns a single row of results.
The default behavior is to return an int, but that can be overridden by
using the constructor with an extra return type parameter.
Intended to use to call SQL functions that return a single result using a
query like "select user()" or "select sysdate from dual". It is not intended
for calling more complex stored functions or for using a CallableStatement to
invoke a stored procedure or stored function. Use StoredProcedure or SqlCall
for this type of processing.
This is a concrete class, which there is often no need to subclass.
Code using this package can create an object of this type, declaring SQL
and parameters, and then invoke the appropriate run method
repeatedly to execute the function. Subclasses are only supposed to add
specialized run methods for specific parameter and return types.
Like all RdbmsOperation objects, SqlFunction objects are thread-safe.
| Constructor: |
public SqlFunction() {
setRowsExpected(1);
}
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. |
public SqlFunction(DataSource ds,
String sql) {
setRowsExpected(1);
setDataSource(ds);
setSql(sql);
}
Create a new SqlFunction object with SQL, but without parameters.
Must add parameters or settle with none. Parameters:
ds - DataSource to obtain connections from
sql - SQL to execute
|
public SqlFunction(DataSource ds,
String sql,
int[] types) {
setRowsExpected(1);
setDataSource(ds);
setSql(sql);
setTypes(types);
}
Create a new SqlFunction object with SQL and parameters. Parameters:
ds - DataSource to obtain connections from
sql - SQL to execute
types - SQL types of the parameters, as defined in the
java.sql.Types class
Also see:
- java.sql.Types
|
public SqlFunction(DataSource ds,
String sql,
int[] types,
Class resultType) {
setRowsExpected(1);
setDataSource(ds);
setSql(sql);
setTypes(types);
setResultType(resultType);
}
Create a new SqlFunction object with SQL, parameters and a result type. Parameters:
ds - DataSource to obtain connections from
sql - SQL to execute
types - SQL types of the parameters, as defined in the
java.sql.Types class
resultType - the type that the result object is required to match
Also see:
- setResultType(Class)
- java.sql.Types
|
| Methods from org.springframework.jdbc.object.MappingSqlQuery: |
|---|
|
mapRow, mapRow |
| Methods from org.springframework.jdbc.object.MappingSqlQueryWithParameters: |
|---|
|
mapRow, newRowMapper |
| Methods from org.springframework.jdbc.object.SqlQuery: |
|---|
|
execute, execute, execute, execute, execute, execute, execute, execute, execute, execute, execute, execute, executeByNamedParam, executeByNamedParam, findObject, findObject, findObject, findObject, findObject, findObject, findObject, findObject, findObject, findObject, findObjectByNamedParam, findObjectByNamedParam, getRowsExpected, newRowMapper, setRowsExpected |
| Methods from org.springframework.jdbc.object.RdbmsOperation: |
|---|
|
afterPropertiesSet, allowsUnusedParameters, checkCompiled, compile, compileInternal, declareParameter, getDeclaredParameters, getGeneratedKeysColumnNames, getJdbcTemplate, getResultSetType, getSql, isCompiled, isReturnGeneratedKeys, isUpdatableResults, setDataSource, setFetchSize, setGeneratedKeysColumnNames, setJdbcTemplate, setMaxRows, setParameters, setQueryTimeout, setResultSetType, setReturnGeneratedKeys, setSql, setTypes, setUpdatableResults, supportsLobParameters, validateNamedParameters, validateParameters |