基本 CRUD 实战专题测试
考察知识点
- MyBatis 增删改查基本语法(insert、update、delete、select)
- SQL 映射文件(Mapper XML)的配置与使用
- 参数传递方式(单参数、多参数、对象参数、@Param 注解)
- 结果集映射(resultType、resultMap)
- 主键回填与自增主键处理
- 动态 SQL 基础(if、where 标签)
💡 参考答案在文末
判断题
1
在 MyBatis 中,使用 selectOne() 方法查询数据库时,如果 SQL 语句返回了多条记录,MyBatis 会抛出 TooManyResultsException 异常。
单选题
2
在 MyBatis 的 Mapper XML 文件中,<select> 标签用于定义查询语句。以下关于 <select> 标签常用属性的描述,哪一项是错误的?
多选题
3
在 MyBatis 中实现批量插入数据,以下哪些方式是可行的?
4
在 MyBatis 中实现条件更新(UPDATE)时,以下关于动态 SQL 的使用描述,哪些是正确的?
5
关于 MyBatis 中 SqlSession 的事务控制,以下哪些描述是正确的?
简答题
6
请使用 MyBatis 的 <foreach> 标签编写一个批量插入用户的 Mapper XML 语句。假设用户表 t_user 包含字段 id(自增主键)、name、email、age,传入参数为 List<User> 类型的 users。请写出完整的 <insert> 语句。
7
请编写一个 MyBatis Mapper XML 中的条件删除语句。要求:根据传入的参数 id、name、age 进行条件删除,如果参数为 null 则不作为删除条件。请使用动态 SQL 标签实现。
8
请编写一段 Java 代码,使用 MyBatis 的 SqlSession 实现以下功能:先插入一条用户记录,再更新该用户的邮箱,如果任何一步失败则回滚整个事务。要求展示完整的事务控制流程。
参考答案
1.正确
2.D
3.A;B;C
4.A;B;D
5.B;C;D
6.略
7.略
8.略
想在手机上练习这套试卷?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码