TypeHandler 自定义类型处理器专题测试
考察知识点
- TypeHandler 接口:接口方法定义、BaseTypeHandler 继承、注册方式
- 枚举类型处理:EnumTypeHandler 与 EnumOrdinalTypeHandler 的区别、默认策略
- JSON 类型处理:序列化/反序列化方向、Jackson 集成、null 值处理
- 枚举字段映射:XML 配置、注解方式、全局配置与局部配置优先级
💡 参考答案在文末
判断题
1
继承 BaseTypeHandler 实现自定义 TypeHandler 时,必须手动处理 parameter 为 null 的情况。
2
如果在 resultMap 中为某字段指定了 TypeHandler,则该配置优先于 mybatis-config.xml 中的全局注册。
单选题
3
在 MyBatis Mapper XML 中,如何为特定字段指定使用 EnumOrdinalTypeHandler?
4
MyBatis 默认情况下,使用哪种策略处理枚举类型的映射?
5
在 MyBatis 中,TypeHandler 接口定义了几个核心方法用于 Java 类型与 JDBC 类型之间的转换?
6
在 MyBatis 中处理 JSON 类型字段时,通常需要结合以下哪个库来实现对象序列化?
多选题
7
关于 MyBatis 的 TypeHandler 接口,以下说法正确的有?
8
关于 MyBatis 枚举类型处理,以下说法正确的有?
9
实现一个处理 JSON 类型字段的 TypeHandler 时,需要完成哪些操作?
10
关于枚举字段映射的配置方式,以下正确的有?
填空题
11
MyBatis 内置的两种枚举 TypeHandler 分别是:
- ____________ - 按枚举名称映射
- ____________ - 按枚举索引映射
12
在 MyBatis 中,自定义 TypeHandler 注册到框架的两种方式:
- 在 mybatis-config.xml 中使用 ____________ 标签注册
- 使用 ____________ 和 @MappedJdbcTypes 注解标注在 TypeHandler 类上
简答题
13
请编写一个使用 Jackson 处理 JSON 类型字段的 TypeHandler 实现(伪代码即可),并说明 key 设计要点。
参考答案
1.错误
2.正确
3.A
4.D
5.C
6.B
7.A;B;D
8.A;B;D
9.A;B;D
10.A;C
11.EnumTypeHandler;EnumOrdinalTypeHandler
12.<typeHandlers>;@MappedTypes
13.略
想在手机上练习这套试卷?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码