public class BeanPropertySqlParameterSource extends AbstractSqlParameterSource
SqlParameterSource
implementation that obtains parameter values
from bean properties of a given JavaBean object. The names of the bean
properties have to match the parameter names.
Uses a Spring BeanWrapper for bean property access underneath.
NamedParameterJdbcTemplate
,
BeanWrapper
TYPE_UNKNOWN
Constructor and Description |
---|
BeanPropertySqlParameterSource(Object object)
Create a new BeanPropertySqlParameterSource for the given bean.
|
Modifier and Type | Method and Description |
---|---|
String[] |
getReadablePropertyNames()
Provide access to the property names of the wrapped bean.
|
int |
getSqlType(String paramName)
Derives a default SQL type from the corresponding property type.
|
Object |
getValue(String paramName)
Return the parameter value for the requested named parameter.
|
boolean |
hasValue(String paramName)
Determine whether there is a value for the specified named parameter.
|
getTypeName, registerSqlType, registerTypeName
public BeanPropertySqlParameterSource(Object object)
object
- the bean instance to wrappublic boolean hasValue(String paramName)
SqlParameterSource
paramName
- the name of the parameterpublic Object getValue(String paramName) throws IllegalArgumentException
SqlParameterSource
paramName
- the name of the parameterIllegalArgumentException
- if there is no value for the requested parameterpublic String[] getReadablePropertyNames()
PropertyAccessor
interface.public int getSqlType(String paramName)
getSqlType
in interface SqlParameterSource
getSqlType
in class AbstractSqlParameterSource
paramName
- the name of the parameterTYPE_UNKNOWN
if not registeredStatementCreatorUtils.javaTypeToSqlParameterType(java.lang.Class<?>)