Package org.apache.ibatis.builder
Class MapperBuilderAssistant
- java.lang.Object
-
- org.apache.ibatis.builder.BaseBuilder
-
- org.apache.ibatis.builder.MapperBuilderAssistant
-
public class MapperBuilderAssistant extends BaseBuilder
-
-
Field Summary
Fields Modifier and Type Field Description private Cache
currentCache
private java.lang.String
currentNamespace
private java.lang.String
resource
private boolean
unresolvedCacheRef
-
Fields inherited from class org.apache.ibatis.builder.BaseBuilder
configuration, typeAliasRegistry, typeHandlerRegistry
-
-
Constructor Summary
Constructors Constructor Description MapperBuilderAssistant(Configuration configuration, java.lang.String resource)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description MappedStatement
addMappedStatement(java.lang.String id, SqlSource sqlSource, StatementType statementType, SqlCommandType sqlCommandType, java.lang.Integer fetchSize, java.lang.Integer timeout, java.lang.String parameterMap, java.lang.Class<?> parameterType, java.lang.String resultMap, java.lang.Class<?> resultType, ResultSetType resultSetType, boolean flushCache, boolean useCache, boolean resultOrdered, KeyGenerator keyGenerator, java.lang.String keyProperty, java.lang.String keyColumn, java.lang.String databaseId, LanguageDriver lang)
Backward compatibility signature 'addMappedStatement'.MappedStatement
addMappedStatement(java.lang.String id, SqlSource sqlSource, StatementType statementType, SqlCommandType sqlCommandType, java.lang.Integer fetchSize, java.lang.Integer timeout, java.lang.String parameterMap, java.lang.Class<?> parameterType, java.lang.String resultMap, java.lang.Class<?> resultType, ResultSetType resultSetType, boolean flushCache, boolean useCache, boolean resultOrdered, KeyGenerator keyGenerator, java.lang.String keyProperty, java.lang.String keyColumn, java.lang.String databaseId, LanguageDriver lang, java.lang.String resultSets)
ParameterMap
addParameterMap(java.lang.String id, java.lang.Class<?> parameterClass, java.util.List<ParameterMapping> parameterMappings)
ResultMap
addResultMap(java.lang.String id, java.lang.Class<?> type, java.lang.String extend, Discriminator discriminator, java.util.List<ResultMapping> resultMappings, java.lang.Boolean autoMapping)
java.lang.String
applyCurrentNamespace(java.lang.String base, boolean isReference)
Discriminator
buildDiscriminator(java.lang.Class<?> resultType, java.lang.String column, java.lang.Class<?> javaType, JdbcType jdbcType, java.lang.Class<? extends TypeHandler<?>> typeHandler, java.util.Map<java.lang.String,java.lang.String> discriminatorMap)
ParameterMapping
buildParameterMapping(java.lang.Class<?> parameterType, java.lang.String property, java.lang.Class<?> javaType, JdbcType jdbcType, java.lang.String resultMap, ParameterMode parameterMode, java.lang.Class<? extends TypeHandler<?>> typeHandler, java.lang.Integer numericScale)
ResultMapping
buildResultMapping(java.lang.Class<?> resultType, java.lang.String property, java.lang.String column, java.lang.Class<?> javaType, JdbcType jdbcType, java.lang.String nestedSelect, java.lang.String nestedResultMap, java.lang.String notNullColumn, java.lang.String columnPrefix, java.lang.Class<? extends TypeHandler<?>> typeHandler, java.util.List<ResultFlag> flags)
Backward compatibility signature 'buildResultMapping'.ResultMapping
buildResultMapping(java.lang.Class<?> resultType, java.lang.String property, java.lang.String column, java.lang.Class<?> javaType, JdbcType jdbcType, java.lang.String nestedSelect, java.lang.String nestedResultMap, java.lang.String notNullColumn, java.lang.String columnPrefix, java.lang.Class<? extends TypeHandler<?>> typeHandler, java.util.List<ResultFlag> flags, java.lang.String resultSet, java.lang.String foreignColumn, boolean lazy)
java.lang.String
getCurrentNamespace()
LanguageDriver
getLanguageDriver(java.lang.Class<? extends LanguageDriver> langClass)
Deprecated.private ParameterMap
getStatementParameterMap(java.lang.String parameterMapName, java.lang.Class<?> parameterTypeClass, java.lang.String statementId)
private java.util.List<ResultMap>
getStatementResultMaps(java.lang.String resultMap, java.lang.Class<?> resultType, java.lang.String statementId)
private java.util.List<ResultMapping>
parseCompositeColumnName(java.lang.String columnName)
private java.util.Set<java.lang.String>
parseMultipleColumnNames(java.lang.String columnName)
private java.lang.Class<?>
resolveParameterJavaType(java.lang.Class<?> resultType, java.lang.String property, java.lang.Class<?> javaType, JdbcType jdbcType)
private java.lang.Class<?>
resolveResultJavaType(java.lang.Class<?> resultType, java.lang.String property, java.lang.Class<?> javaType)
void
setCurrentNamespace(java.lang.String currentNamespace)
Cache
useCacheRef(java.lang.String namespace)
Cache
useNewCache(java.lang.Class<? extends Cache> typeClass, java.lang.Class<? extends Cache> evictionClass, java.lang.Long flushInterval, java.lang.Integer size, boolean readWrite, boolean blocking, java.util.Properties props)
private <T> T
valueOrDefault(T value, T defaultValue)
-
Methods inherited from class org.apache.ibatis.builder.BaseBuilder
booleanValueOf, createInstance, getConfiguration, integerValueOf, parseExpression, resolveAlias, resolveClass, resolveJdbcType, resolveParameterMode, resolveResultSetType, resolveTypeHandler, resolveTypeHandler, stringSetValueOf
-
-
-
-
Field Detail
-
currentNamespace
private java.lang.String currentNamespace
-
resource
private final java.lang.String resource
-
currentCache
private Cache currentCache
-
unresolvedCacheRef
private boolean unresolvedCacheRef
-
-
Constructor Detail
-
MapperBuilderAssistant
public MapperBuilderAssistant(Configuration configuration, java.lang.String resource)
-
-
Method Detail
-
getCurrentNamespace
public java.lang.String getCurrentNamespace()
-
setCurrentNamespace
public void setCurrentNamespace(java.lang.String currentNamespace)
-
applyCurrentNamespace
public java.lang.String applyCurrentNamespace(java.lang.String base, boolean isReference)
-
useCacheRef
public Cache useCacheRef(java.lang.String namespace)
-
useNewCache
public Cache useNewCache(java.lang.Class<? extends Cache> typeClass, java.lang.Class<? extends Cache> evictionClass, java.lang.Long flushInterval, java.lang.Integer size, boolean readWrite, boolean blocking, java.util.Properties props)
-
addParameterMap
public ParameterMap addParameterMap(java.lang.String id, java.lang.Class<?> parameterClass, java.util.List<ParameterMapping> parameterMappings)
-
buildParameterMapping
public ParameterMapping buildParameterMapping(java.lang.Class<?> parameterType, java.lang.String property, java.lang.Class<?> javaType, JdbcType jdbcType, java.lang.String resultMap, ParameterMode parameterMode, java.lang.Class<? extends TypeHandler<?>> typeHandler, java.lang.Integer numericScale)
-
addResultMap
public ResultMap addResultMap(java.lang.String id, java.lang.Class<?> type, java.lang.String extend, Discriminator discriminator, java.util.List<ResultMapping> resultMappings, java.lang.Boolean autoMapping)
-
buildDiscriminator
public Discriminator buildDiscriminator(java.lang.Class<?> resultType, java.lang.String column, java.lang.Class<?> javaType, JdbcType jdbcType, java.lang.Class<? extends TypeHandler<?>> typeHandler, java.util.Map<java.lang.String,java.lang.String> discriminatorMap)
-
addMappedStatement
public MappedStatement addMappedStatement(java.lang.String id, SqlSource sqlSource, StatementType statementType, SqlCommandType sqlCommandType, java.lang.Integer fetchSize, java.lang.Integer timeout, java.lang.String parameterMap, java.lang.Class<?> parameterType, java.lang.String resultMap, java.lang.Class<?> resultType, ResultSetType resultSetType, boolean flushCache, boolean useCache, boolean resultOrdered, KeyGenerator keyGenerator, java.lang.String keyProperty, java.lang.String keyColumn, java.lang.String databaseId, LanguageDriver lang, java.lang.String resultSets)
-
addMappedStatement
public MappedStatement addMappedStatement(java.lang.String id, SqlSource sqlSource, StatementType statementType, SqlCommandType sqlCommandType, java.lang.Integer fetchSize, java.lang.Integer timeout, java.lang.String parameterMap, java.lang.Class<?> parameterType, java.lang.String resultMap, java.lang.Class<?> resultType, ResultSetType resultSetType, boolean flushCache, boolean useCache, boolean resultOrdered, KeyGenerator keyGenerator, java.lang.String keyProperty, java.lang.String keyColumn, java.lang.String databaseId, LanguageDriver lang)
Backward compatibility signature 'addMappedStatement'.- Parameters:
id
- the idsqlSource
- the sql sourcestatementType
- the statement typesqlCommandType
- the sql command typefetchSize
- the fetch sizetimeout
- the timeoutparameterMap
- the parameter mapparameterType
- the parameter typeresultMap
- the result mapresultType
- the result typeresultSetType
- the result set typeflushCache
- the flush cacheuseCache
- the use cacheresultOrdered
- the result orderedkeyGenerator
- the key generatorkeyProperty
- the key propertykeyColumn
- the key columndatabaseId
- the database idlang
- the lang- Returns:
- the mapped statement
-
valueOrDefault
private <T> T valueOrDefault(T value, T defaultValue)
-
getStatementParameterMap
private ParameterMap getStatementParameterMap(java.lang.String parameterMapName, java.lang.Class<?> parameterTypeClass, java.lang.String statementId)
-
getStatementResultMaps
private java.util.List<ResultMap> getStatementResultMaps(java.lang.String resultMap, java.lang.Class<?> resultType, java.lang.String statementId)
-
buildResultMapping
public ResultMapping buildResultMapping(java.lang.Class<?> resultType, java.lang.String property, java.lang.String column, java.lang.Class<?> javaType, JdbcType jdbcType, java.lang.String nestedSelect, java.lang.String nestedResultMap, java.lang.String notNullColumn, java.lang.String columnPrefix, java.lang.Class<? extends TypeHandler<?>> typeHandler, java.util.List<ResultFlag> flags, java.lang.String resultSet, java.lang.String foreignColumn, boolean lazy)
-
buildResultMapping
public ResultMapping buildResultMapping(java.lang.Class<?> resultType, java.lang.String property, java.lang.String column, java.lang.Class<?> javaType, JdbcType jdbcType, java.lang.String nestedSelect, java.lang.String nestedResultMap, java.lang.String notNullColumn, java.lang.String columnPrefix, java.lang.Class<? extends TypeHandler<?>> typeHandler, java.util.List<ResultFlag> flags)
Backward compatibility signature 'buildResultMapping'.- Parameters:
resultType
- the result typeproperty
- the propertycolumn
- the columnjavaType
- the java typejdbcType
- the jdbc typenestedSelect
- the nested selectnestedResultMap
- the nested result mapnotNullColumn
- the not null columncolumnPrefix
- the column prefixtypeHandler
- the type handlerflags
- the flags- Returns:
- the result mapping
-
getLanguageDriver
@Deprecated public LanguageDriver getLanguageDriver(java.lang.Class<? extends LanguageDriver> langClass)
Deprecated.Gets the language driver.- Parameters:
langClass
- the lang class- Returns:
- the language driver
-
parseMultipleColumnNames
private java.util.Set<java.lang.String> parseMultipleColumnNames(java.lang.String columnName)
-
parseCompositeColumnName
private java.util.List<ResultMapping> parseCompositeColumnName(java.lang.String columnName)
-
resolveResultJavaType
private java.lang.Class<?> resolveResultJavaType(java.lang.Class<?> resultType, java.lang.String property, java.lang.Class<?> javaType)
-
resolveParameterJavaType
private java.lang.Class<?> resolveParameterJavaType(java.lang.Class<?> resultType, java.lang.String property, java.lang.Class<?> javaType, JdbcType jdbcType)
-
-