Class MapperBuilderAssistant


  • public class MapperBuilderAssistant
    extends BaseBuilder
    • 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 id
        sqlSource - the sql source
        statementType - the statement type
        sqlCommandType - the sql command type
        fetchSize - the fetch size
        timeout - the timeout
        parameterMap - the parameter map
        parameterType - the parameter type
        resultMap - the result map
        resultType - the result type
        resultSetType - the result set type
        flushCache - the flush cache
        useCache - the use cache
        resultOrdered - the result ordered
        keyGenerator - the key generator
        keyProperty - the key property
        keyColumn - the key column
        databaseId - the database id
        lang - 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 type
        property - the property
        column - the column
        javaType - the java type
        jdbcType - the jdbc type
        nestedSelect - the nested select
        nestedResultMap - the nested result map
        notNullColumn - the not null column
        columnPrefix - the column prefix
        typeHandler - the type handler
        flags - the flags
        Returns:
        the result mapping
      • 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)