Package org.apache.commons.dbutils
Class OutParameter<T>
- java.lang.Object
-
- org.apache.commons.dbutils.OutParameter<T>
-
- Type Parameters:
T- the class of the parameter; should be compatible via cast with the class returned by theCallableStatement.getObject(int)method.
public class OutParameter<T> extends java.lang.ObjectRepresents an OUT parameter for a stored procedure. When running a stored procedure withQueryRunner, pass an instance ofOutParameterto indicate that the parameter at that index is an OUT parameter. The value of the parameter may be obtained from theOutParameterinstance viagetValue().INOUT parameters are also supported by setting the
valueof theOutParameterinstance before invoking the stored procedure.
-
-
Constructor Summary
Constructors Constructor Description OutParameter(int sqlType, java.lang.Class<T> javaType)Construct anOutParameterfor the given JDBC SQL type and Java type.OutParameter(int sqlType, java.lang.Class<T> javaType, T value)Construct anOutParameterfor the given JDBC SQL type and Java type and with the given value.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Class<T>getJavaType()Get the Java class for this OUT parameter.intgetSqlType()Get the JDBC SQL type for this OUT parameter.TgetValue()Get the value of the OUT parameter.(package private) voidregister(java.sql.CallableStatement stmt, int index)Set up the given statement by registering an OUT parameter at the given index using thesqlTypeandvalueof thisOutParameter.(package private) voidsetValue(java.sql.CallableStatement stmt, int index)Set the value using the return value of the parameter an the given index from the givenCallableStatement.voidsetValue(T value)Set the value of the OUT parameter.java.lang.StringtoString()
-
-
-
Constructor Detail
-
OutParameter
public OutParameter(int sqlType, java.lang.Class<T> javaType)Construct anOutParameterfor the given JDBC SQL type and Java type.- Parameters:
sqlType- the JDBC SQL type of the parameter as injava.sql.Types.javaType- the Java class of the parameter value, cast compatible with the type returned byCallableStatement.getObject(int)for the JDBC type given bysqlType.
-
OutParameter
public OutParameter(int sqlType, java.lang.Class<T> javaType, T value)Construct anOutParameterfor the given JDBC SQL type and Java type and with the given value. The parameter will be treated as an INOUT parameter if the value is null.- Parameters:
sqlType- the JDBC SQL type of the parameter as injava.sql.Types.javaType- the Java class of the parameter value, cast compatible with the type returned byCallableStatement.getObject(int)for the JDBC type given bysqlType.value- the IN value of the parameter
-
-
Method Detail
-
getSqlType
public int getSqlType()
Get the JDBC SQL type for this OUT parameter.- Returns:
- the JDBC SQL type for this OUT parameter.
-
getJavaType
public java.lang.Class<T> getJavaType()
Get the Java class for this OUT parameter.- Returns:
- the Java class for this OUT parameter.
-
getValue
public T getValue()
Get the value of the OUT parameter. After the stored procedure has been executed, the value is the value returned via this parameter.- Returns:
- the value of the OUT parameter.
-
setValue
public void setValue(T value)
Set the value of the OUT parameter. If the value is not null when the stored procedure is executed, then the parameter will be treated like an INOUT parameter.- Parameters:
value- the new value for the parameter.
-
setValue
void setValue(java.sql.CallableStatement stmt, int index) throws java.sql.SQLExceptionSet the value using the return value of the parameter an the given index from the givenCallableStatement.- Parameters:
stmt- the already executed statementindex- the (1-based) index of the parameter- Throws:
java.sql.SQLException- when the value could not be retrieved from the statement.
-
register
void register(java.sql.CallableStatement stmt, int index) throws java.sql.SQLExceptionSet up the given statement by registering an OUT parameter at the given index using thesqlTypeandvalueof thisOutParameter. If the value is not null, the parameter is treated like an INOUT parameter and the value is set on the statement.- Parameters:
stmt- the statement the parameter should register on.index- the (1-based) index of the parameter.- Throws:
java.sql.SQLException- if the parameter could not be registered, or if the value of the parameter could not be set.
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-