MyBatis 的类型处理器是什么?

MyBatis 的类型处理器主要由两部分组成:

  1. 基本的 TypeHandler : 负责 javaType 和 jdbcType 的转换。
  2. 高级的 TypeHandler: 能够解决更复杂的数据类型转换和处理的需求。
    MyBatis 内置了很多基本的 TypeHandler ,对应各种基本类型和字符串:
  • BooleanTypeHandler
  • ByteTypeHandler
  • ShortTypeHandler
  • IntegerTypeHandler
  • LongTypeHandler
  • FloatTypeHandler
  • DoubleTypeHandler
  • StringTypeHanlder
  • etc

这些内置类型处理器负责类型的转换,如:

  • Integer -> Integer
  • String -> Integer
  • Integer -> String

高级类型处理器主要由开发人员根据需求实现,负责处理复杂的数据类型:

  • EnumTypeHandler
  • MapperTypeHandler
  • BlobTypeHander
  • DateTypeHandler
  • MapTypeHandler
  • ArrayTypeHandler
  • ObjectTypeHandler
  • etc

这些高级类型处理器解决了:

  • 枚举转换
  • 对象序列化
  • 日期转换
  • Map 和集合转换
  • Blob binary转换

总的来说,MyBatis 的类型处理器提供了丰富的基本类型和高级类型的转换功能。用于解决对象关系映射。