Java EE数据持久化框架测试题含答案Word文件下载.docx
《Java EE数据持久化框架测试题含答案Word文件下载.docx》由会员分享,可在线阅读,更多相关《Java EE数据持久化框架测试题含答案Word文件下载.docx(43页珍藏版)》请在冰豆网上搜索。
10.在MyBatis的配置文件中,通过()标签来设置实体类的别名[单选题]*
typeAliases(正确答案)
dataSource
11.在MyBatis中调用SqlSessionFactoryBuilder的哪个方法用于获取SqlSession对象()[单选题]*
getSession()
openSession()(正确答案)
session()
showSqlSession()
12.Mybatis是如何将sql执行结果封装为目标对象并返回的[单选题]*
id
使用sql列的别名(正确答案)
resultMap
13.在MyBatis中,操作数据库的核心类是(
)[单选题]*
SqlSessionFactory
SqlSession(正确答案)
Session
SqlSessionFactoryBuilder
14.关于MyBatis框架的使用说法错误的是(
.MyBatis是一个基于Java且封装了jdbc的数据库操作框架
MyBatis简化了jdbc数据库操作,但是sql语句还是自行编写
使用MyBatis框架,数据库创作的sql语句将会自动产生,无需自己编写(正确答案)
MyBatis是一个ORM框架
15.在MyBatis中,在进行select查询映射时,下列关于返回类型的说法,正确的是(
只能是resultType
只能是resultMap
可以是resultType或resultMap(正确答案)
以上说法都不对
16.以下关于MyBatis集合类型参数的处理,说法错误的是()[单选题]*
当参数为Collection接口,转化为Map,Map的Key为collection
当参数类型为List接口时,除了collection的值外,list作为key
如果参数为数组,也会转化为Map,Map的key为array
如果参数为数组,也会转化为Map,Map的key为list(正确答案)
17.主要用于更新时的mybatis动态sql标签是[单选题]*
Choose(when/otherwise)
Set(正确答案)
Where
Foreach
18.关于MyBatis中传递多参数的情况,如果参数封装成了Student类,那么在Mapper.xml中获取数据,应该怎么操作[单选题]*
条件获取数据可以通过#{属性名}来获得(正确答案)
条件获取数据可以通过#{arg0}来获得
条件获取数据可以通过#{arg1}来获得
条件获取数据可以通过#{属性名}或者#{arg0}来获得
19.MyBatis编程步骤选择正确顺序的一项[单选题]*
Step1:
创建SQLSessionFactoryStep2:
通过SQLSessionFactory
创建SQLSession
Step3:
通过SQLSession
执行数据库操作
Step4:
调用session.close()关闭会话
创建SQLSessionStep2:
通过SQLSession执行数据库操作
调用mit()提交事务
"
创建SQLSessionStep2:
通过SQLSession创建SQLSessionFactory
通过SQLSessionFactory执行数据库操作
Step5:
调用session.close()关闭会话"
创建SQLSessionFactory
Step2:
通过SQLSessionFactory创建SQLSession
Step5:
调用session.close()关闭会话(正确答案)
20.MyBatis注解中怎么给参数一个名字()[单选题]*
@ParamC11(正确答案)
@Select
Options
@Results
21.在MyBatis数据库操作时,需要编写()和对应的xml文件,其中xml文件中编写的是对应Sql语句[单选题]*
接口和抽象方法(正确答案)
普通类和普通方法
抽象类和抽象方法
普通类和抽象方法
22.映射一对一使用的标签是[单选题]*
23.MyBatis是那一层的框架[单选题]*
业务逻辑层
表示层
持久层(正确答案)
数据库层
24.涉及查询最大薪资的SQL函数是[单选题]*
MIN
MAX(正确答案)
AVG
SUM
25.想实现批量删除的动态sql的标记可选择[单选题]*
Set
Foreach(正确答案)
26.使用MyBatisGenerator自动工具生成的文件不包含(
Entity(正确答案)
DAO类
SqlMap.xml
MapperXML
27.Maven项目的主配置文件是()[单选题]*
pom.xml(正确答案)
web.xml
mysql-config.xml
application.xml
28.Mapper.xml中用于设置返回值类型和映射关系的是[单选题]*
accociation
select
resultMap(正确答案)
constructor
29.以下不属于id标签和result标签包含属性的是()[单选题]*
column
property
jdbcType
case(正确答案)
30.以下不属于Mybatis优秀特性的是()[单选题]*
支持自定义SQL查询
支持存储过程
支持高级映射
支持XML注解(正确答案)
31.用于取出由数据库内部生成主键的属性是()[单选题]*
keyProperty
useGeneratedKeys(正确答案)
keyColumn
dataBaseid
32.更新数据的Mapper.xml的标签是什么[单选题]*
Insert
Select
Update(正确答案)
Delete
33.映射一对多使用的标签是[单选题]*
34.查询列前缀属性为[单选题]*
javaType
ColumnPrefix(正确答案)
ColumnBefore
35.实现对象遍历标签是[单选题]*
foreach(正确答案)
trim
36.以下哪个属性作用为:
当trim元素包含内容时,会把内容中匹配的前缀字符串去掉[单选题]*
prefix
prefixOverrides(正确答案)
suffix
suffixOverrides
37.以下不属于foreach标签包含属性的是[单选题]*
close
item
end(正确答案)
38.用foreach标签实现对象遍历,当有多个参数时,可使用如下哪个注解为参数进行指定名称[单选题]*
@set
@Map
@Param(正确答案)
@value
39.一般提到Mybatis缓存的时候指的是()[单选题]*
二级缓存(正确答案)
一级缓存
本地缓存
三级缓存
40.ORM是一种什么框架[单选题]*
面向对象
面向数据
对象持久化
41.什么是DAO模式[单选题]*
数据库访问对象(正确答案)
关系对象
业务逻辑处理
42.哪项不属于MyBatis中使用#和$书写占位符的区别[单选题]*
#方式能够很大程度防止sql注入
$方式能防止Sql注入(正确答案)
$将传入的数据直接显示生成在sql中
#将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号
43.以下哪项不属于JDBC连接数据库步骤之一[单选题]*
加载JDBC驱动程序
提供JDBC连接的URL
创建数据库连接
不需要Statement对象直接执行sql语句(正确答案)
44.Mysql数据服务的默认端口号是[单选题]*
3306(正确答案)
8080
3303
1433
45.以下哪项属于查询班级所有李姓学生的SQL语句[单选题]*
select*fromstudentwherenamelike'
李%'
(正确答案)
select*fromstudentwherename='
select*fromstudentwherenamelike'
%李%'
select*fromstudentwherename='
李_'
46.以下哪项属于查询班级所有学生并按照年龄升序排序的SQL语句[单选题]*
select*fromstudentgroupbyage
select*fromstudentgroupbyagedesc
select*fromstudentorderbyagedesc
select*fromstudentorderbyage(正确答案)
47.涉及查询整个班级平均年龄的SQL函数是[单选题]*
MAX
AVG(正确答案)
48.以下哪项是查询学生记录表中的第3-5条数据[单选题]*
select*fromstudentlimit2,3(正确答案)
select*fromstudentlimit2,5
select*fromstudentlimit3,5
select*fromstudentlimit3,2
49.以下哪项不属于MyBatis框架的优点[单选题]*
易于上手和掌握
接触sql与程序代码的耦合
不支持级联更新(正确答案)
提供xml标签,支持编写动态sql
50.以下哪项不属于resultMap的自动映射级别[单选题]*
NONE
PARTIAL
FULL
ANY(正确答案)
51.mybatis指定配置文件的根元素使用的是什么[单选题]*
<
sqlMapConfig>
configration>
setting>
environments>
52.以下哪项不属于MyBatis的API[单选题]*
Executor(正确答案)
SqlSession
53.不同的XML映射文件,id是否可以重复[单选题]*
任何情况都不能重复
不管陪不配置namespace,id均不可以重复
如果配置namespace,id可以重复(正确答案)
以上均不对
54.MyBatis如何执行批处理[单选题]*
使用BatchExecutor完成批处理(正确答案)
使用SimpleExecutor完成批处理
任一executor均可实现
无法进行批处理
55.以下双方属于多对多关系的是[单选题]*
用户-角色(正确答案)
用户-银行卡
用户-手机号
学生-语文成绩
56.查询姓名不是NULL的数据语法准确的是[单选题]*
wherename!
null
wherenamenotnull
wherenameisnotnull(正确答案)
=null
57.用于将事务处理写到数据库的命令是[单选题]*
insert
rollback
commit(正确答案)
savepoint
58.以下哪项不属于xml映射文件标签[单选题]*
resultmap
parameter(正确答案)
include
59.以下哪项不属于Mybatis全局配置文件中的标签[单选题]*
data(正确答案)
typealiases
60.Mybatis中使用collection标签来解决一对多关联,哪项不属于其属性[单选题]*
properties(正确答案)
ofType
61.JDBC与Mybatis能不能执行批量插入[单选题]*
都不能
JDBC能,myBatis不能
都能(正确答案)
JDBC不能,myBatis能
62.#{}和${}的区别是什么[单选题]*
${}是字符串替换,#{}是预处理(正确答案)
#{}是字符串替换,${}是预处理
${}可以有效的防止SQL注入,提高系统安全性
无区别
63.以下哪项不属于Mybatis动态sql标签[单选题]*
when
get(正确答案)
64.以下说法错误的是[单选题]*
Mapper接口方法名和mapper.xml中定义的每个sql的id可以不同(正确答案)
Mapper接口方法的输入参数类型和mapper.xml中定义的每个sql
的parameterType的类型相同
Mapper接口方法的输出参数类型和mapper.xml中定义的每个sql的resultType的类型相同
Mapper.xml文件中的namespace即是mapper接口的类路径
65.以下不属于Mybatis动态sql标签的是?
[单选题]*
foreach
set
than(正确答案)
66.以下不属于JDBC的缺点的是[单选题]*
结果处理存在着重复代码
sql写在代码中不好维护
频繁创建数据库连接对象造成资源浪费
高耦合,效率高(正确答案)
67.以下不属于MyBatis的Executor执行器的是[单选题]*
SimpleExecutor
ReuseExecutor
BatchExecutor
StateMent(正确答案)
68.不属于MyBatis二级缓存默认效果有哪些[单选题]*
映射语句文件中的所有select语句会被缓存
映射语句文件中的所有insert、update、delete语句会刷新缓存
缓存会使用LRU算法收回
未设置缓存时间间隔,缓存会以任意时间顺序刷新(正确答案)
69.下列说法不正确的是[单选题]*
GROUPBY子句用来分组
Where子句用来筛选指定行
Having子句在聚合后对组记录进行筛选
Having子句用来从from的结果中筛选行(正确答案)
70.以下哪些列类型不属于数值型数据[单选题]*
double
integer
set(正确答案)
float
71.在MyBatis中,ExecutorType的值不包括[单选题]*
ExecutorType.SIMPLE
ExecutorType.BATCH
ExecutorType.EXECUTE(正确答案)
ExecutorType.REUSE
72.mybaties中模糊查询like语句的写法*
select*fromfoowherebarlike#{value}(正确答案)
select*fromfoowherebarlike#{%value%}
select*fromfoowherebarlike%#{value}%
select*fromfoowherebarlike"
%"
${value}"
73.Mybatis的Xml映射文件中,不同的Xml映射文件,id是否可以重复?
选择说法正确的*
不同的xml映射文件,如果配置了namespace,那么id可以重复(正确答案)
如果没有配置namespace,那么id不能重复(正确答案)
如果没有配置namespace,那么id能重复
不同的xml映射文件,如果配置了namespace,那么id不可以重复
74.使用MyBatis的mapper接口调用时有哪些要求*
Mapper接口方法名和mapper.xml中定义的每个sql的id相同(正确答案)
Mapper.xml文件中的namespace即是mapper接口的类路径(正确答案)
Mapper接口方法的输出参数类型和Mapper.xml中定义的每个sql的resultType的类型相同(正确答案)
Mapper接口方法的输入参数类型和Mapper.xml中定义的每个sql的parameterType的类型相同(正确答案)
75.以下属于MyBatis基本注解的有()*
@Select(正确答案)
@Insert(正确答案)
@Update(正确答案)
@Provider(正确答案)
76.以下属于choose标签内部标签的是*
when(正确答案)
otherwise(正确答案)
77.MyBatisGeneratorXML的context标签有哪些核心属性*
defaultModeType(正确答案)
property(正确答案)
param
78.默认情况下,MyBatis允许使用插件来拦截的接口有以下()*
ParameterHandler(正确答案)
ResultHandler(正确答案)
StatementHandler(正确答案)
79.持久层设计要考虑的范畴有哪些*
数据存储逻辑分离(正确答案)
数据访问底层实现的分离(正确答案)
资源管理和调度的分离(正确答案)
数据抽象(正确答案)
80.事务的特性包括*
原子性(正确答案)
一致性(正确答案)
隔离性(正确答案)
持久性(正确答案)
81.以下属于利用Mapper接口实现MyBatis操作的具体步骤的是*
定义实体类(正确答案)
在Mapper接口中定义操作方法(正确答案)
在Mapper.xml中实现定义Mapper接口方法的SQL(正确答案)
在测试类中进行测试(正确答案)
82.以下属于MyBatis框架环境搭建步骤的是*
导入Jar包(正确答案)
编写Mybatis核心配置文件mybatis-config.xml(正确答案)
创建实体类(正确答案)
DAO层创建sql映射文件(正确答案)
83.以下哪项是可能造成JavaBean中字段与数据库列无法映射的原因*
字段与数据库列名不一致(正确答案)
没有对应的getter/setter方法(正确答案)
未导入jar包
项目搭建出错
84.以下属于MyBatis设计模式的是*
Builder模式(正确答案)
工厂模式(正确答案)
单例模式(正确答案)
代理模式(正确答案)
85.以下属于MyBatis动态标签的是*
choose(正确答案)
86.以下属于MyBatis缓存级别的是*
一级缓存(正确答案)
无缓存
87.XML映射文件中,除了常见的增删改查标签之外,还有哪些标签*
parameterMap(正确答案)
include(正确答案)
selectKey(正确答案)
88.Mybatis接口绑定的方式有哪两种*
注解绑定(正确答案)
直接绑定
XML里面写SQL绑定(正确答案)
XML里面写方法绑定
89.Mapper接口的参数可以是*
简单类型(正确答案)
pojo类型包装类型(正确答案)
Map(正确答案)
List集合(正确答案)
90.在mapper中如何传递多个参数*
使用占位符的思想(正确答案)
使用数组传递
使用map集合作为参数来装载(正确答案)
无法实现
91."
在mybatis3动态SQL中,没有使用下列()标签"
92.关于MyBatis映射器,说法错误的是()[单选题]*
映射器定义了数据访问接口
映射器是接口
映射器中的方法是抽象方法,需要实现(正确答案)
映射器类似于DAO接口,但仅需声明其中的方法,编程人员无须编码实现
93.在使用MyBatis的select标签查询客户(custo