类 CallMetaDataContext
- java.lang.Object
- org.springframework.jdbc.core.metadata.CallMetaDataContext
public class CallMetaDataContext extends Object
Class to manage context meta-data used for the configuration and execution of a stored procedure call.- 从以下版本开始:
- 2.5
- 作者:
- Thomas Risberg, Juergen Hoeller, Kiril Nugmanov
构造器概要
构造器 构造器 说明 CallMetaDataContext()
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 String
createCallString()
Build the call string based on configuration and meta-data information.protected String
createParameterBinding(SqlParameter parameter)
Build the parameter binding fragment.SqlParameter
createReturnResultSetParameter(String parameterName, RowMapper<?> rowMapper)
Create a ReturnResultSetParameter/SqlOutParameter depending on the support provided by the JDBC driver used for the database in use.List<SqlParameter>
getCallParameters()
Get the List of SqlParameter objects to be used in call execution.String
getCatalogName()
Get the name of the catalog.String
getFunctionReturnName()
Get the name used for the return value of the function.Set<String>
getLimitedInParameterNames()
Get a limited set of in parameters to be used.List<String>
getOutParameterNames()
Get a list of the out parameter names.String
getProcedureName()
Get the name of the procedure.String
getScalarOutParameterName()
Get the name of the single out parameter for this call.String
getSchemaName()
Get the name of the schema.void
initializeMetaData(DataSource dataSource)
Initialize this class with meta-data from the database.boolean
isAccessCallParameterMetaData()
Check whether call parameter meta-data should be accessed.boolean
isFunction()
Check whether this call is a function call.boolean
isNamedBinding()
Check whether parameters should be bound by name.boolean
isReturnValueRequired()
Check whether a return value is required.Map<String,?>
matchInParameterValuesWithCallParameters(Object[] parameterValues)
Map<String,?>
matchInParameterValuesWithCallParameters(Map<String,?> inParameters)
Match input parameter values with the parameters declared to be used in the call.Map<String,Object>
matchInParameterValuesWithCallParameters(SqlParameterSource parameterSource)
Match input parameter values with the parameters declared to be used in the call.void
processParameters(List<SqlParameter> parameters)
Process the list of parameters provided, and if procedure column meta-data is used, the parameters will be matched against the meta-data information and any missing ones will be automatically included.protected List<SqlParameter>
reconcileParameters(List<SqlParameter> parameters)
Reconcile the provided parameters with available meta-data and add new ones where appropriate.void
setAccessCallParameterMetaData(boolean accessCallParameterMetaData)
Specify whether call parameter meta-data should be accessed.void
setCatalogName(String catalogName)
Specify the name of the catalog.void
setFunction(boolean function)
Specify whether this call is a function call.void
setFunctionReturnName(String functionReturnName)
Specify the name used for the return value of the function.void
setLimitedInParameterNames(Set<String> limitedInParameterNames)
Specify a limited set of in parameters to be used.void
setNamedBinding(boolean namedBinding)
Specify whether parameters should be bound by name.void
setOutParameterNames(List<String> outParameterNames)
Specify the names of the out parameters.void
setProcedureName(String procedureName)
Specify the name of the procedure.void
setReturnValueRequired(boolean returnValueRequired)
Specify whether a return value is required.void
setSchemaName(String schemaName)
Secify the name of the schema.
构造器详细资料
CallMetaDataContext
public CallMetaDataContext()
方法详细资料
setFunctionReturnName
public void setFunctionReturnName(String functionReturnName)
Specify the name used for the return value of the function.
getFunctionReturnName
public String getFunctionReturnName()
Get the name used for the return value of the function.
setLimitedInParameterNames
public void setLimitedInParameterNames(Set<String> limitedInParameterNames)
Specify a limited set of in parameters to be used.
getLimitedInParameterNames
public Set<String> getLimitedInParameterNames()
Get a limited set of in parameters to be used.
setOutParameterNames
public void setOutParameterNames(List<String> outParameterNames)
Specify the names of the out parameters.
getOutParameterNames
public List<String> getOutParameterNames()
Get a list of the out parameter names.
setProcedureName
public void setProcedureName(String procedureName)
Specify the name of the procedure.
getProcedureName
public String getProcedureName()
Get the name of the procedure.
setCatalogName
public void setCatalogName(String catalogName)
Specify the name of the catalog.
getCatalogName
public String getCatalogName()
Get the name of the catalog.
setSchemaName
public void setSchemaName(String schemaName)
Secify the name of the schema.
getSchemaName
public String getSchemaName()
Get the name of the schema.
setFunction
public void setFunction(boolean function)
Specify whether this call is a function call.
isFunction
public boolean isFunction()
Check whether this call is a function call.
setReturnValueRequired
public void setReturnValueRequired(boolean returnValueRequired)
Specify whether a return value is required.
isReturnValueRequired
public boolean isReturnValueRequired()
Check whether a return value is required.
setAccessCallParameterMetaData
public void setAccessCallParameterMetaData(boolean accessCallParameterMetaData)
Specify whether call parameter meta-data should be accessed.
isAccessCallParameterMetaData
public boolean isAccessCallParameterMetaData()
Check whether call parameter meta-data should be accessed.
setNamedBinding
public void setNamedBinding(boolean namedBinding)
Specify whether parameters should be bound by name.- 从以下版本开始:
- 4.2
isNamedBinding
public boolean isNamedBinding()
Check whether parameters should be bound by name.- 从以下版本开始:
- 4.2
initializeMetaData
public void initializeMetaData(DataSource dataSource)
Initialize this class with meta-data from the database.- 参数:
dataSource
- the DataSource used to retrieve meta-data
createReturnResultSetParameter
public SqlParameter createReturnResultSetParameter(String parameterName, RowMapper<?> rowMapper)
Create a ReturnResultSetParameter/SqlOutParameter depending on the support provided by the JDBC driver used for the database in use.- 参数:
parameterName
- the name of the parameter (also used as the name of the List returned in the output)rowMapper
- a RowMapper implementation used to map the data returned in the result set- 返回:
- the appropriate SqlParameter
getScalarOutParameterName
public String getScalarOutParameterName()
Get the name of the single out parameter for this call. If there are multiple parameters, the name of the first one will be returned.
getCallParameters
public List<SqlParameter> getCallParameters()
Get the List of SqlParameter objects to be used in call execution.
processParameters
public void processParameters(List<SqlParameter> parameters)
Process the list of parameters provided, and if procedure column meta-data is used, the parameters will be matched against the meta-data information and any missing ones will be automatically included.- 参数:
parameters
- the list of parameters to use as a base
reconcileParameters
protected List<SqlParameter> reconcileParameters(List<SqlParameter> parameters)
Reconcile the provided parameters with available meta-data and add new ones where appropriate.
matchInParameterValuesWithCallParameters
public Map<String,Object> matchInParameterValuesWithCallParameters(SqlParameterSource parameterSource)
Match input parameter values with the parameters declared to be used in the call.- 参数:
parameterSource
- the input values- 返回:
- a Map containing the matched parameter names with the value taken from the input
matchInParameterValuesWithCallParameters
public Map<String,?> matchInParameterValuesWithCallParameters(Map<String,?> inParameters)
Match input parameter values with the parameters declared to be used in the call.- 参数:
inParameters
- the input values- 返回:
- a Map containing the matched parameter names with the value taken from the input
matchInParameterValuesWithCallParameters
public Map<String,?> matchInParameterValuesWithCallParameters(Object[] parameterValues)
createCallString
public String createCallString()
Build the call string based on configuration and meta-data information.- 返回:
- the call string to be used
createParameterBinding
protected String createParameterBinding(SqlParameter parameter)
Build the parameter binding fragment.- 参数:
parameter
- call parameter- 返回:
- parameter binding fragment
- 从以下版本开始:
- 4.2