四、MyBatis的类型处理器
4.1 typeAliases别名配置
类型别名是为 Java 类型设置一个短的名字,可以方便我们引用某个类。
我们仔细观察mapper.xml配置文件,会发现不管是入参(paramterType)还是出参(ResultType)都需要编写类的全路径,非常麻烦
我们可以在MyBatis的核心配置文件中配置别名:
<typeAliases>
<!--配置包别名-->
<package name="com.dfbz.entity"/>
<!--配置单个别名-->
<!-- <typeAlias type="com.dfbz.entity.Emp" alias="emp"></typeAlias>-->
</typeAliases>
4.2 MyBatis内置别名
MyBatis已经为许多常见的 Java 类型内建了相应的类型别名。它们都是大小写不敏感的,我们在起别名的时候千万不要占用已有的别名。
别名 | 映射类型 |
---|---|
_byte | byte |
_long | long |
_short | short |
_int | int |
_integer | int |
_double | double |
_float | float |
_boolean | boolean |
string | String |
byte | Byte |
long | Long |
short | Short |
int | Integer |
integer | Integer |
double | Double |
float | Float |
boolean | Boolean |
date | Date |
decimal | BigDecimal |
bigdecimal | BigDecimal |
object | Object |
map | Map |
hashmap | HashMap |
list | List |
arraylist | ArrayList |
collection | Collection |
iterator | Iterator |
4.3 typeHandlers类型处理器
4.3.1 内置类型处理器
无论是 MyBatis 在预处理语句(PreparedStatement)中设置一个参数时,还是从结果集中取出一个值时, 都会用类型处理器将获取的值以合适的方式转换成 Java 类型。