首页/ 学科题库/ Mytatis/ TypeHandler 自定义类型处理器专题测试
Mytatis 模拟试卷

TypeHandler 自定义类型处理器专题测试

13 题 45 分钟 难度:★★
  • TypeHandler 接口:接口方法定义、BaseTypeHandler 继承、注册方式
  • 枚举类型处理:EnumTypeHandler 与 EnumOrdinalTypeHandler 的区别、默认策略
  • JSON 类型处理:序列化/反序列化方向、Jackson 集成、null 值处理
  • 枚举字段映射:XML 配置、注解方式、全局配置与局部配置优先级

试卷习题(13 题)

参考答案在文末
判断题
1
判断题

继承 BaseTypeHandler 实现自定义 TypeHandler 时,必须手动处理 parameter 为 null 的情况。

A

对

B

错

2
判断题

如果在 resultMap 中为某字段指定了 TypeHandler,则该配置优先于 mybatis-config.xml 中的全局注册。

A

对

B

错

单选题
3
单选题

在 MyBatis Mapper XML 中,如何为特定字段指定使用 EnumOrdinalTypeHandler?

A

在 标签中添加 typeHandler 属性

B

在 标签中添加 handler 属性

C

在全局配置文件中修改默认枚举处理器

D

无法在 XML 中指定,只能通过注解

4
单选题

MyBatis 默认情况下,使用哪种策略处理枚举类型的映射?

A

使用枚举的 ordinal 值(索引)

B

使用枚举的 name 值(名称)

C

使用 EnumOrdinalTypeHandler

D

使用 EnumTypeHandler

5
单选题

在 MyBatis 中,TypeHandler 接口定义了几个核心方法用于 Java 类型与 JDBC 类型之间的转换?

A

2个

B

3个

C

4个

D

5个

6
单选题

在 MyBatis 中处理 JSON 类型字段时,通常需要结合以下哪个库来实现对象序列化?

A

Spring Data JPA

B

Jackson 或 Gson

C

HikariCP

D

PageHelper

多选题
7
多选题

关于 MyBatis 的 TypeHandler 接口,以下说法正确的有?

A

自定义 TypeHandler 必须实现 org.apache.ibatis.type.TypeHandler 接口

B

BaseTypeHandler 是 TypeHandler 接口的抽象实现,简化了开发

C

注册 TypeHandler 只能通过 mybatis-config.xml 配置文件

D

TypeHandler 可以处理 Java 对象与数据库 JSON 字段之间的转换

8
多选题

关于 MyBatis 枚举类型处理,以下说法正确的有?

A

EnumTypeHandler 使用枚举的 name 属性进行映射

B

EnumOrdinalTypeHandler 使用枚举的 ordinal 属性进行映射

C

默认情况下,枚举类型在数据库中存储为整数

D

可以通过自定义 TypeHandler 实现枚举与数据库 code 值的映射

9
多选题

实现一个处理 JSON 类型字段的 TypeHandler 时,需要完成哪些操作?

A

在 setParameter 方法中将 Java 对象序列化为 JSON 字符串

B

在 getResult 方法中将 JSON 字符串反序列化为 Java 对象

C

必须使用 @MappedJdbcTypes 注解指定 JDBC 类型为 OTHER

D

需要处理 null 值情况,避免反序列化异常

10
多选题

关于枚举字段映射的配置方式,以下正确的有?

A

可以在 resultMap 的 标签中通过 typeHandler 属性指定

B

可以在 Java Bean 属性上使用 @TableField(typeHandler=...) 注解

C

可以在 mybatis-config.xml 中全局注册 EnumOrdinalTypeHandler

D

枚举类型无法使用自定义 TypeHandler

填空题
11
填空题

MyBatis 内置的两种枚举 TypeHandler 分别是:

  1. - 按枚举名称映射
  2. - 按枚举索引映射
12
填空题

在 MyBatis 中,自定义 TypeHandler 注册到框架的两种方式:

  1. 在 mybatis-config.xml 中使用 标签注册
  2. 使用 和 @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.略
想在手机上在线作答这套卷子?
使用微信 卷王开发者小程序/App,首页顶部扫一扫识别二维码,即可限时作答并自动判分。
了解产品 App
← 上一套 SQL 映射文件基础专题测试 下一套 → 与 Spring 集成专题测试