Package org.apache.ibatis.type
Class TypeHandlerRegistry
- java.lang.Object
-
- org.apache.ibatis.type.TypeHandlerRegistry
-
public final class TypeHandlerRegistry extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.Map<java.lang.Class<?>,TypeHandler<?>>allTypeHandlersMapprivate java.lang.Class<? extends TypeHandler>defaultEnumTypeHandlerprivate java.util.Map<JdbcType,TypeHandler<?>>jdbcTypeHandlerMapprivate static java.util.Map<JdbcType,TypeHandler<?>>NULL_TYPE_HANDLER_MAPprivate java.util.Map<java.lang.reflect.Type,java.util.Map<JdbcType,TypeHandler<?>>>typeHandlerMapprivate TypeHandler<java.lang.Object>unknownTypeHandler
-
Constructor Summary
Constructors Constructor Description TypeHandlerRegistry()The default constructor.TypeHandlerRegistry(Configuration configuration)The constructor that pass the MyBatis configuration.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> TypeHandler<T>getInstance(java.lang.Class<?> javaTypeClass, java.lang.Class<?> typeHandlerClass)private java.util.Map<JdbcType,TypeHandler<?>>getJdbcHandlerMap(java.lang.reflect.Type type)private java.util.Map<JdbcType,TypeHandler<?>>getJdbcHandlerMapForEnumInterfaces(java.lang.Class<?> clazz, java.lang.Class<?> enumClazz)private java.util.Map<JdbcType,TypeHandler<?>>getJdbcHandlerMapForSuperclass(java.lang.Class<?> clazz)TypeHandler<?>getMappingTypeHandler(java.lang.Class<? extends TypeHandler<?>> handlerType)<T> TypeHandler<T>getTypeHandler(java.lang.Class<T> type)<T> TypeHandler<T>getTypeHandler(java.lang.Class<T> type, JdbcType jdbcType)private <T> TypeHandler<T>getTypeHandler(java.lang.reflect.Type type, JdbcType jdbcType)TypeHandler<?>getTypeHandler(JdbcType jdbcType)<T> TypeHandler<T>getTypeHandler(TypeReference<T> javaTypeReference)<T> TypeHandler<T>getTypeHandler(TypeReference<T> javaTypeReference, JdbcType jdbcType)java.util.Collection<TypeHandler<?>>getTypeHandlers()Gets the type handlers.TypeHandler<java.lang.Object>getUnknownTypeHandler()booleanhasTypeHandler(java.lang.Class<?> javaType)booleanhasTypeHandler(java.lang.Class<?> javaType, JdbcType jdbcType)booleanhasTypeHandler(TypeReference<?> javaTypeReference)booleanhasTypeHandler(TypeReference<?> javaTypeReference, JdbcType jdbcType)private TypeHandler<?>pickSoleHandler(java.util.Map<JdbcType,TypeHandler<?>> jdbcHandlerMap)voidregister(java.lang.Class<?> typeHandlerClass)voidregister(java.lang.Class<?> javaTypeClass, java.lang.Class<?> typeHandlerClass)voidregister(java.lang.Class<?> javaTypeClass, JdbcType jdbcType, java.lang.Class<?> typeHandlerClass)<T> voidregister(java.lang.Class<T> type, JdbcType jdbcType, TypeHandler<? extends T> handler)<T> voidregister(java.lang.Class<T> javaType, TypeHandler<? extends T> typeHandler)private voidregister(java.lang.reflect.Type javaType, JdbcType jdbcType, TypeHandler<?> handler)private <T> voidregister(java.lang.reflect.Type javaType, TypeHandler<? extends T> typeHandler)voidregister(java.lang.String packageName)voidregister(java.lang.String javaTypeClassName, java.lang.String typeHandlerClassName)voidregister(JdbcType jdbcType, TypeHandler<?> handler)<T> voidregister(TypeHandler<T> typeHandler)<T> voidregister(TypeReference<T> javaTypeReference, TypeHandler<? extends T> handler)voidsetDefaultEnumTypeHandler(java.lang.Class<? extends TypeHandler> typeHandler)Set a defaultTypeHandlerclass forEnum.
-
-
-
Field Detail
-
jdbcTypeHandlerMap
private final java.util.Map<JdbcType,TypeHandler<?>> jdbcTypeHandlerMap
-
typeHandlerMap
private final java.util.Map<java.lang.reflect.Type,java.util.Map<JdbcType,TypeHandler<?>>> typeHandlerMap
-
unknownTypeHandler
private final TypeHandler<java.lang.Object> unknownTypeHandler
-
allTypeHandlersMap
private final java.util.Map<java.lang.Class<?>,TypeHandler<?>> allTypeHandlersMap
-
NULL_TYPE_HANDLER_MAP
private static final java.util.Map<JdbcType,TypeHandler<?>> NULL_TYPE_HANDLER_MAP
-
defaultEnumTypeHandler
private java.lang.Class<? extends TypeHandler> defaultEnumTypeHandler
-
-
Constructor Detail
-
TypeHandlerRegistry
public TypeHandlerRegistry()
The default constructor.
-
TypeHandlerRegistry
public TypeHandlerRegistry(Configuration configuration)
The constructor that pass the MyBatis configuration.- Parameters:
configuration- a MyBatis configuration- Since:
- 3.5.4
-
-
Method Detail
-
setDefaultEnumTypeHandler
public void setDefaultEnumTypeHandler(java.lang.Class<? extends TypeHandler> typeHandler)
- Parameters:
typeHandler- a type handler class forEnum- Since:
- 3.4.5
-
hasTypeHandler
public boolean hasTypeHandler(java.lang.Class<?> javaType)
-
hasTypeHandler
public boolean hasTypeHandler(TypeReference<?> javaTypeReference)
-
hasTypeHandler
public boolean hasTypeHandler(java.lang.Class<?> javaType, JdbcType jdbcType)
-
hasTypeHandler
public boolean hasTypeHandler(TypeReference<?> javaTypeReference, JdbcType jdbcType)
-
getMappingTypeHandler
public TypeHandler<?> getMappingTypeHandler(java.lang.Class<? extends TypeHandler<?>> handlerType)
-
getTypeHandler
public <T> TypeHandler<T> getTypeHandler(java.lang.Class<T> type)
-
getTypeHandler
public <T> TypeHandler<T> getTypeHandler(TypeReference<T> javaTypeReference)
-
getTypeHandler
public TypeHandler<?> getTypeHandler(JdbcType jdbcType)
-
getTypeHandler
public <T> TypeHandler<T> getTypeHandler(java.lang.Class<T> type, JdbcType jdbcType)
-
getTypeHandler
public <T> TypeHandler<T> getTypeHandler(TypeReference<T> javaTypeReference, JdbcType jdbcType)
-
getTypeHandler
private <T> TypeHandler<T> getTypeHandler(java.lang.reflect.Type type, JdbcType jdbcType)
-
getJdbcHandlerMap
private java.util.Map<JdbcType,TypeHandler<?>> getJdbcHandlerMap(java.lang.reflect.Type type)
-
getJdbcHandlerMapForEnumInterfaces
private java.util.Map<JdbcType,TypeHandler<?>> getJdbcHandlerMapForEnumInterfaces(java.lang.Class<?> clazz, java.lang.Class<?> enumClazz)
-
getJdbcHandlerMapForSuperclass
private java.util.Map<JdbcType,TypeHandler<?>> getJdbcHandlerMapForSuperclass(java.lang.Class<?> clazz)
-
pickSoleHandler
private TypeHandler<?> pickSoleHandler(java.util.Map<JdbcType,TypeHandler<?>> jdbcHandlerMap)
-
getUnknownTypeHandler
public TypeHandler<java.lang.Object> getUnknownTypeHandler()
-
register
public void register(JdbcType jdbcType, TypeHandler<?> handler)
-
register
public <T> void register(TypeHandler<T> typeHandler)
-
register
public <T> void register(java.lang.Class<T> javaType, TypeHandler<? extends T> typeHandler)
-
register
private <T> void register(java.lang.reflect.Type javaType, TypeHandler<? extends T> typeHandler)
-
register
public <T> void register(TypeReference<T> javaTypeReference, TypeHandler<? extends T> handler)
-
register
public <T> void register(java.lang.Class<T> type, JdbcType jdbcType, TypeHandler<? extends T> handler)
-
register
private void register(java.lang.reflect.Type javaType, JdbcType jdbcType, TypeHandler<?> handler)
-
register
public void register(java.lang.Class<?> typeHandlerClass)
-
register
public void register(java.lang.String javaTypeClassName, java.lang.String typeHandlerClassName) throws java.lang.ClassNotFoundException- Throws:
java.lang.ClassNotFoundException
-
register
public void register(java.lang.Class<?> javaTypeClass, java.lang.Class<?> typeHandlerClass)
-
register
public void register(java.lang.Class<?> javaTypeClass, JdbcType jdbcType, java.lang.Class<?> typeHandlerClass)
-
getInstance
public <T> TypeHandler<T> getInstance(java.lang.Class<?> javaTypeClass, java.lang.Class<?> typeHandlerClass)
-
register
public void register(java.lang.String packageName)
-
getTypeHandlers
public java.util.Collection<TypeHandler<?>> getTypeHandlers()
Gets the type handlers.- Returns:
- the type handlers
- Since:
- 3.2.2
-
-