接口绑定与动态代理专题测试
考察知识点
- Mapper 接口与 XML 映射文件的绑定规则(namespace 与接口全限定名对应)
- MyBatis 动态代理的工作原理(SqlSession.getMapper)
- 接口方法名与 SQL 标签 id 的对应关系
- 接口方法参数与 SQL 参数的映射方式
- 动态代理的使用场景与优势
💡 参考答案在文末
判断题
1
Mapper 接口方法的返回值类型必须与 XML 映射文件中对应 SQL 的 resultType 属性指定的类型完全一致,否则 MyBatis 会抛出异常。
单选题
2
MyBatis 实现 Mapper 接口与 XML 映射文件绑定的核心机制是什么?
3
关于 MyBatis 中 Mapper 接口的定义,以下说法正确的是?
4
以下代码中,userMapper 对象的实际类型是什么?
Java
SqlSession session = sqlSessionFactory.openSession();
UserMapper userMapper = session.getMapper(UserMapper.class);
5
关于通过 SqlSession.getMapper() 获取并使用 Mapper,以下哪些说法是正确的?
多选题
6
关于 MyBatis 接口绑定原理,以下哪些描述是正确的?
7
以下关于 Mapper 接口定义方式,哪些是正确的?
填空题
8
MyBatis 为 Mapper 接口创建的动态代理对象的核心类是____________,该代理类实现了____________接口,在 invoke 方法中通过____________来执行 SQL 语句。
9
调用 session.getMapper(UserMapper.class) 时,SqlSession 内部会通过____________查找已注册的接口,然后通过____________工厂类创建动态代理对象,最终返回的代理对象在方法调用时会委托给____________执行 SQL 逻辑。
参考答案
1.错误
2.B
3.C
4.B
5.C
6.A;B;D
7.A;C
8.MapperProxy;InvocationHandler;MapperMethod
9.MapperRegistry;MapperProxyFactory;MapperMethod
想在手机上练习这套试卷?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码