JAVA EE 数据持久化含答案Word文档下载推荐.docx
《JAVA EE 数据持久化含答案Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《JAVA EE 数据持久化含答案Word文档下载推荐.docx(45页珍藏版)》请在冰点文库上搜索。
![JAVA EE 数据持久化含答案Word文档下载推荐.docx](https://file1.bingdoc.com/fileroot1/2023-5/9/9ab897eb-57aa-473c-ad7e-cff4add439f3/9ab897eb-57aa-473c-ad7e-cff4add439f31.gif)
(正确答案)
map>
collection>
9.删除具有主从关系的主表记录时会出现删除异常,可以使用什么解决方式()
设置从表的删除时规则为“置为NULL”(正确答案)
设置主表的删除时规则为“置为NULL”
设置从表的删除时规则为“置为级联”(正确答案)
设置主表的删除时规则为“置为级联”
10.执行以下代码生成结果变量result代表的含义是什么intresult=userMapper.deleteUserById(id);
()[单选题]
删除消耗时间
删除数据字段数量
数据删除受影响的行数(正确答案)
数据库剩余数据行数
11.在MyBatis数据库操作时,需要编写()和对应的xml文件,其中xml文件中编写的是对应Sql语句[单选题]
接口和抽象方法(正确答案)
普通类和普通方法
抽象类和抽象方法
普通类和抽象方法
12.@SelectKey(statement="
selectlast_insert_id()"
keyProperty="
id"
resultType=Long.class,before=false)注解的作用是什么()[单选题]
返回值为最后一次插入数据的id值(正确答案)
查询数据库中最大的id值
查询当前数据库中id的数量
查询数据库中是否存在相同id
13.以下哪项不属于xml映射文件标签[单选题]
select
resultmap
parameter(正确答案)
include
14.MyBatis中用于表示返回结果类型的属性名称是[单选题]
resultType(正确答案)
parameterType
collection
returnType
15.MyBatis中用于表示输入类型的属性名称是[单选题]
resultType
parameterType(正确答案)
16.在MyBatis的配置文件中,通过()标签来设置实体类的别名[单选题]
properties
settings
typeAliases(正确答案)
dataSource
17.以下哪项不属于Mybatis全局配置文件中的标签[单选题]
data(正确答案)
plugins
typealiases
18.以下哪项不属于resultMap的自动映射级别[单选题]
NONE
PARTIAL
FULL
ANY(正确答案)
19.以下说法错误的是[单选题]
Mapper接口方法名和mapper.xml中定义的每个sql的id可以不同(正确答案)
Mapper接口方法的输入参数类型和mapper.xml中定义的每个sql
的parameterType的类型相同
Mapper接口方法的输出参数类型和mapper.xml中定义的每个sql的resultType的类型相同
Mapper.xml文件中的namespace即是mapper接口的类路径
20.用于取出由数据库内部生成主键的属性是()[单选题]
keyProperty
useGeneratedKeys(正确答案)
keyColumn
dataBaseid
21.更新数据的Mapper.xml的标签是什么[单选题]
Insert
Select
Update(正确答案)
Delete
22.使用jdbc方式返回主键自增的值需要设置<
insert>
标签的什么属性()[单选题]
id
23.Mybatis实现DML操作的标签有哪些()
update>
delete>
provider>
24.Mybatis接口方法中只有一个参数时,在映射器XML可用的参数是什么()[单选题]
{param}
{param0}
{arg0}(正确答案)
{arg1}
25.Mybatis接口绑定的方式有哪两种
注解绑定(正确答案)
直接绑定
XML里面写SQL绑定(正确答案)
XML里面写方法绑定
26.在mapper中如何传递多个参数
使用占位符的思想(正确答案)
使用数组传递
使用map集合作为参数来装载(正确答案)
无法实现
27.如何获取自动生成的(主)键值[单选题]
设置resultMap
设置useGeneratedKeys
设置keyProperty(正确答案)
设置Property
28.Mybatis中使用自动映射就是通过()让Mybatis自动将值匹配到对应字段上[单选题]
类名
属性名
别名(正确答案)
29.Mapper接口的参数可以是
简单类型(正确答案)
pojo类型包装类型(正确答案)
Map(正确答案)
List集合(正确答案)
30.以下关于MyBatis集合类型参数的处理,说法错误的是()[单选题]
当参数为Collection接口,转化为Map,Map的Key为collection
当参数类型为List接口时,除了collection的值外,list作为key
如果参数为数组,也会转化为Map,Map的key为array
如果参数为数组,也会转化为Map,Map的key为list(正确答案)
31.以下哪项不属于MyBatis的API[单选题]
Executor(正确答案)
SqlSession
32.在使用MyBatis的select标签查询客户(customer)的电话信息时,如果客户实体中电话的属性名为mobile,而客户表所对应的字段名为phone,则正确的写法是()[单选题]
selectphonefromcustomer
selectmobilefromcustomer
selectmobileasphonefromcustomer
selectphoneasmobilefromcustomer(正确答案)
33.<
标签支持的属性值以及属性的作用和<
association>
标签完全相同,分别有哪些()
columnPrefix(正确答案)
property(正确答案)
javaType(正确答案)
34.子标签<
配置已经有的结果集时使用哪个属性()[单选题]
columnPrefix
35.以下不属于<
标签嵌套查询常用属性的是()[单选题]
column
fetchType
36.Mybatis中使用collection标签来解决一对多关联,哪项不属于其属性[单选题]
properties(正确答案)
ofType
37.在MyBatis中,配置结果映射时,使用()标签实现1对多的关联[单选题]
many-one
one-many
association
collection(正确答案)
38.在MyBatis中,配置结果映射时,使用()标签实现多对1的关联[单选题]
association(正确答案)
39..映射一对一使用的标签是[单选题]
40..映射一对多使用的标签是[单选题]
41.Mapper.xml中用于设置返回值类型和映射关系的是[单选题]
accociation
resultMap(正确答案)
constructor
42.mybatis指定配置文件的根元素使用的是什么[单选题]
sqlMapConfig>
configration>
setting>
environments>
43.<
foreach>
标签可以实现对象遍历的用法,适用对象不包括下列哪一个()[单选题]
数组
Map
List
Math(正确答案)
44.以下属于choose标签内部标签的是
when(正确答案)
otherwise(正确答案)
if
45.以下不属于Mybatis动态sql标签的是?
[单选题]
trim
foreach
set
than(正确答案)
46.XML映射文件中,除了常见的增删改查标签之外,还有哪些标签
parameterMap(正确答案)
include(正确答案)
selectKey(正确答案)
47.以下哪个属性作用为:
当trim元素包含内容时,会把内容中匹配的前缀字符串去掉[单选题]
prefix
prefixOverrides(正确答案)
suffix
suffixOverrides
48.以下哪项不属于Mybatis动态sql标签[单选题]
choose
when
get(正确答案)
49.实现对象遍历标签是[单选题]
foreach(正确答案)
50.以下属于MyBatis动态标签的是
set(正确答案)
choose(正确答案)
51.在MyBatis动态SQL中,没有使用下列()标签[单选题]
for(正确答案)
where
52.在mybatis3动态SQL中,没有使用下列()标签[单选题]
53.<
标签包含以下哪些属性()
item(正确答案)
index(正确答案)
separator(正确答案)
54.以下不属于foreach标签包含属性的是[单选题]
close
item
end(正确答案)
55.主要用于更新时的mybatis动态sql标签是[单选题]
Choose(when/otherwise)
Set(正确答案)
Where
Foreach
56.想实现批量删除的动态sql的标记可选择[单选题]
Set
Foreach(正确答案)
57.动态SQL标签<
choose>
标签中最少可以有几个<
when>
标签()[单选题]
1(正确答案)
2
3
以上都不对
58.动态SQL标签<
标签中关于<
otherwise>
标签描述正确的是()[单选题]
标签可以有0个(正确答案)
标签只能有1个
标签可以有2个
59.以下不属于Mybatis的动态标签的是()[单选题]
if>
where>
60.动态SQL标签<
判断String类型的字段是否为空字符串的正确用法是()[单选题]
iftest="
userName!
=nullanduserName!
='
'
"
>
/if>
=nulluserName!
=nulloruserName!
=null||userName!
61.为实现批量输入和动态更新可以使用以下哪个动态SQL标签()[单选题]
set>
62.用foreach标签实现对象遍历,当有多个参数时,可使用如下哪个注解为参数进行指定名称[单选题]
@set
@Map
@Param(正确答案)
@value
63.二级缓存的默认效果有哪些()
映射语句文件中的所有select语句将会被缓存(正确答案)
映射语句文件中所有的insert语句、update语句和delete语句会刷新缓存(正确答案)
缓存永远不会被回收
如果没有设置刷新时间间隔,缓存会随时刷新
64.在以下场景中,不推荐使用二级缓存的是()[单选题]
以更新数据为主的应用中,查询业务较少(正确答案)
以查询为主的应用中,尽可能少的更新操作
查询业务绝大多数都是对单表进行操作的应用
可以按业务划分对表进行分组时,关联表非常少
65.关于mybatis缓存的描述错误的是()[单选题]
一般提到Mybatis缓存的时候,都是指二级缓存
一级缓存默认会启用
一级缓存不能控制
二级缓存不能控制(正确答案)
66.一般提到Mybatis缓存的时候指的是()[单选题]
二级缓存(正确答案)
一级缓存
本地缓存
三级缓存
67.配置MybatisGenerator时,要求不会生成Examp相关的方法,需要设置targetRuntime为什么()[单选题]
Mybatis3Simple(正确答案)
Mybatis3
Mybatis3x
68.使用MyBatisGenerator自动工具生成的文件不包含(
Entity(正确答案)
DAO类
SqlMap.xml
MapperXML
69.配置MybatisGenerator时,<
table>
标签可以配置几个()[单选题]
0个
1个或多个(正确答案)
仅能设置1个
必须设置多个
70.MyBatis注解中怎么给参数一个名字()[单选题]
@ParamC11(正确答案)
@Select
Options
@Results
71.配置MybatisGenerator时,要生成数据库内所有表<
标签中的tableName应该设置成什么()[单选题]
!
#
%(正确答案)
$
72.以下Mybatis核心接口中用于执行增删改查操作的是哪一个()[单选题]
ParameterHandler
ResultSetHandler
StatementHandler
73.创建日志插件时应该通过拦截哪一个接口来完成[单选题]
74.Mybatis允许使用插件来拦截的核心接口有哪些()
ParameterHandler(正确答案)
ResultSetHandler(正确答案)
ResultSet
75.以下哪项是可能造成JavaBean中字段与数据库列无法映射的原因
字段与数据库列名不一致(正确答案)
没有对应的getter/setter方法(正确答案)
未导入jar包
项目搭建出错
76.MyBatis中介绍了映射有哪些情况()
自动映射(正确答案)
简单映射(正确答案)
嵌套子查询映射(正确答案)
嵌套联合查询映射(正确答案)
77.SqlSessionFactorysqlMapper=newSqlSessionFactoryBuilder().build(resourceAsStream);
这行代码代码主要做了哪些事呢,以下说法错误的是[单选题]
主要就涉及到了三个类SqlSessionFactoryBuilder、XMLConfigBuilder、XPathParser
Build方法首先都是用XML配置文件构建一个XMLConfigBuilder类,XMLConfigBuilder通过parse方法返回一个Configuration配置类
Configuration设置到SqlSessionFactory默认实现DefaultSqlSessionFactory的configuration属性并返回
创建SqlSessionFactory对象是通过SqlSessionFactoryBuilder的build方法,他会返回它的默认实现类SqlSessionFactory(正确答案)
78.在MyBatis中,使用select映射查询含有部门详细信息的员工信息,下列关于返回类型的说法,正确的是()[单选题]
只能是resultType
只能是resultMap(正确答案)
可以是resultType或resultMap
以上说法都不正确
79.以下不属于Mybatis优秀特性的是()[单选题]
支持自定义SQL查询
支持存储过程
支持高级映射
支持XML注解(正确答案)
80.JDBC编程有哪些不足之处,Mybatis是如何解决这些问题的,描述正确的是()
在SQLMapConfig.xml中配置数据连接池,使用数据库连接池管理数据库连接(正确答案)
将SQL语句配置在mapper.xml文件中与java代码分离(正确答案)
Mybatis自动将java对象映射到sql语句(正确答案)
Mbatis自动将SQL执行结果映射到java对象(正确答案)
81.事务的特性包括
原子性(正确答案)
一致性(正确答案)
隔离性(正确答案)
持久性(正确答案)
82.以下双方属于多对多关系的是[单选题]
用户-角色(正确答案)
用户-银行卡
用户-手机号
学生-语文成绩
83.在使用MyBatis的时候,除了可以使用@Param注解来实现多参数不同类型入参,还可以用()传递多个参数值[单选题]
用Map对象可以实现传递多参数值(正确答案)
用List对象可以实现传递多参数值
用数组的方式传递
用Set集合的方式传递
84.不属于MyBatis二级缓存默认效果有哪些[单选题]
映射语句文件中的所有select语句会被缓存
映射语句文件中的所有insert、update、delete语句会刷新缓存
缓存会使用LRU算法收回
未设置缓存时间间隔,缓存会以任意时间顺序刷新(正确答案)
85.关于MyBatis映射器,说法错误的是()[单选题]
映射器定义了数据访问接口
映射器是接口
映射器中的方法是抽象方法,需要实现(正确答案)
映射器类似于DAO接口,但仅需声明其中的方法,编程人员无须编码实现
86.以下哪项不属于MyBatis框架的优点[单选题]
易于上手和掌握
接触sql与程序代码的耦合
不支持级联更新(正确答案)
提供xml标签,支持编写动态sql
87.以下属于MyBatis缓存级别的是
一级缓存(正确答案)
无缓存
88.Mybatis的表关联的映射描述错误的是()[单选题]
一对一关联
一对多关联
多对多关联
以上都不对(正确答案)
89.mapper.xml的SQL语句中的占位符${}和#{}描述错误的是()[单选题]
一般会采用#{},#{}在mybatis中,最后会被解析为?
,其实就是Jdbc的PreparedStatement中的?
占位符,它有预编译的过程,可以防止SQL注入
#{}中的变量名可以任意,如果入参类型是pojo,比如是Student类那么#{name}表示取入参对象Student中的name属性
${}取对象的属性使用的是OGNL(ObjectGraphNavigationLanguage)表达式
${}不会做类型解析,但不存在SQL注入的风险(正确答案)
90.MyBatis是那一层的框架[单选题]
表示层
持久层(正确答案)
数据库层
91.关于MyBatis中传递多参数的情况,如果参数封装成JavaBean,应该怎么获取属性值[单选题]
通过#{参数名.属性名}
通过#{arg0}来获得
通过#{arg1}来获得
通过#{成员属性}来获得(正确答案)
92.关于MyBatis中传递多参数的情况,如果参数封装成了Student类,那么在Mapper.xml中获取数据,应该怎么操作[单选题]
条件获取数据可以通过#{属性名}来获得(正确答案)
条件获取数据可以通过#{arg0}来获得
条件获取数据可以通过#{arg1}来获得
条件获取数据可以通过#{属性名}或者#{arg0}