ssm|Java web 作业6 答案详解

作业6

  • 作业6
    • 一. 单选题
    • 二.多选题
    • 三.填空题
    • 四.判断题

一. 单选题 1、下面关于数据库中多表之间关联关系说法错误的是()
A、一对一关联关系可以在任意一方引入对方主键作为外键
B、一对多关联关系在“一”的一方,添加“多”的一方的主键作为外键
C、多对多关联关系会产生中间关系表,引入两张表的主键作为外键
D、多对多关联关系的两个表的主键成可以为联合主键或使用新的字段作为主键
正确答案: B
答案解析:
一对一:在任意一方引入对方主键作为外键。
一对多:在“多”的一方,添加“一”的一方的主键作为外键。
多对多:产生中间关系表,引入两张表的主键作为外键,两个主键成为联合主键或使用新的字段作为主键。
2、在Java中,以下有关类的关联关系描述错误的是()。
A、在Java中,通过对象也可以进行关系描述,他们分别为一对一、一对多、多对一和多对多。
B、一对一的关系就是在本类中定义对方类型的对象
C、一对多的关系就是一个A类类型对应多个B类类型的情况,需要在A类中以集合的方式引入B类类型的对象,在B类中定义A类类型的属性a
D、多对多的关系:在A类中定义B类类型的集合,在B类中定义A类类型的集合。
正确答案: A
答案解析:
ssm|Java web 作业6 答案详解
文章图片

3、下面属性中不属于< association >元素属性的是()
A、property
B、column
C、ofType
D、javaType
正确答案: C
答案解析:
< association >元素中,通常可以配置以下属性:
property:指定映射到的实体类对象属性,与表字段一一对应。
column:指定表中对应的字段。
javaType:指定映射到实体对象属性的类型。
select:指定引入嵌套查询的子SQL语句,该属性用于关联映射中的嵌套查询。
fetchType:指定在关联查询时是否启用延迟加载。fetchType 属性有lazy和eager两个留在值默认值为lazy (即默认关联映射延迟加载)。
ofType是< collectio >元素的属性
4、以下关于MyBatis映射文件中< association >元素属性的说明错误的是()
A、property:指定映射到的实体类对象属性,与表字段一一对应;
B、column:指定表中对应的字段
C、javaType:指定映射到实体对象属性的类型
D、fetchType:指定在关联查询时是否启用延迟加载。fetchType属性有lazy和eager两个属性值,默认值为eager
正确答案: D
答案解析:同上,默认值为lazy
5、以下关于< association >元素中常用属性说法错误的是()。

A、property指定映射到的实体类对象属性,与表字段一一对应
B、column指定表中对应的字段
C、javaType指定映射到实体对象属性的类型
D、fetchType指定在关联查询时是否启用延迟加载,默认值为eager
正确答案: D
答案解析:fetchType属性有lazy和eager两个属性值,默认值为lazy(即默认关联映射延迟加载)。
6、下面关于Java对象之间的关联关系描述正确的是()
A、一对一的关系就是在本类和对方类中定义同一个类型的对象
B、一对多的关系:就是一个A类类型对应多个B类类型的情况
C、多对多的关系只需要在一方的类中引入另一方类型的集合
D、多对多关联关系需要在本类中引入本类的集合
正确答案: B
答案解析:选择2
7、下面关于< collection >元素的描述正确的是()
A、MyBatis就是通过< collection >元素来处理一对多关联关系的
B、< collection >元素的属性与< association >元素完全相同
C、ofType属性与javaType属性对应,它用于指定实体对象中所有属性所包含的元素类型
D、< collection >元素只能使用嵌套查询方式
正确答案: A
答案解析:< resultMap>元素中,包含了一个< collection>子元素,MyBatis就是通过该元素来处理一对多关联关系的。< collection >子元素的属性大部分与< association>元素相同,但其还包含一个特殊属性——ofType。
ofType 属性与 javaType 属性对应,它用于指定实体对象中集合类属性所包含的元素类型。
二.多选题 1、【多选题】MyBatis映射文件中< collection >元素通常可以配置以下属性()。
A、property
B、column
C、ofType
D、select
正确答案: ABCD
答案解析:单选3、 7
2、【多选题】MyBatis映射文件中< association >元素通常可以配置以下属性()。
A、property
B、fetchType
C、ofType
D、select
正确答案: ABD
答案解析:单选3
3、【多选题】在关系型数据库中,多表之间的关联关系主要包括()
A、一对一
B、一对多
C、多对一
D、多对多
正确答案: ABCD
4、【多选题】以下MyBatis一对多关联映射的使用及说法正确的是()
A、MyBatis是通过< resultMap>元素的< collection>子元素该元素来处理一对多关联关系的
B、< collection>子元素的属性大部分与< association>元素相同,但其还包含一个特殊属性–ofType
C、MyBatis一对多关联映射同样可以使用嵌套结果和嵌套查询的方式
D、ofType属性与javaType属性意义相同
正确答案: ABC
5、【多选题】以下有关MyBatis中多对对关联映射的使用及说法正确的是()
A、MyBatis是通过< resultMap>元素的< association>子元素该元素来处理多对一关联关系的
B、多对多关联映射中的< association>子元素与一对多中的< association>子元素用法和属性相同
C、MyBatis是通过< resultMap>元素的< collection>子元素该元素来处理多对一关联关系的
D、多对多关联映射中也有嵌套查询和嵌套结果两种方式
正确答案: CD
答案解析:单选7,填空2
三.填空题 1、【填空题】使用MyBatis时,需要将新创建的映射文件路径配置到____文件中才有效。
正确答案:核心配置
2、【填空题】MyBatis在映射文件中加载关联关系对象主要通过两种方式:____和嵌套结果。
正确答案:嵌套查询
3、【填空题】针对多表之间的操作,MyBatis提供了____来处理对象与对象之间的关联关系。
正确答案:关联映射
4、【填空题】实体映射文件中< select>元素的resultMap属性值必须与< resultMap>元素的____属性值一样。
正确答案:id
5、【填空题】MyBatis是通过< resultMap>元素的____子元素该元素来处理多对多关联关系的。
正确答案:
6、【填空题】在关系型数据库中,多对多关系会产生中间表,引入两张表的主键作为外键,两个主键成为____或使用新的字段作为主键。
正确答案:联合主键
7、 【填空题】< association >元素的 select 属性用于指定引入嵌套查询的子SQL语句,该属性用于关联映射中的____。
正确答案:嵌套查询
8、【填空题】< association >元素的____指定映射到的实体类对象属性,与表字段一一对应。
正确答案:property
四.判断题 1、MyBatis关联映射的< association >元素和< collection >元素中都已默认配置了延迟加载属性。
正确答案:√
2、MyBatis是通过< resultMap >元素的< association >子元素该元素来处理一对一关联关系的()
正确答案:√
3、MyBatis中多对多关联映射同样有嵌套查询和嵌套结果两种关联方式。
正确答案:√
4、在数据库中,多对多的关联关系通常使用一个中间表来维护,比如中间表中的订单id作为外键参照订单表的id,商品id作为外键参照商品表的id()
正确答案:√
5、MyBatis是同样是通过< resultMap >元素的< collection >子元素该元素来处理多对多关联关系的()。
正确答案:√
6、MyBatis中< collection>元素的属性与< association>元素相同,且使用也很简单,同样有嵌套查询和嵌套结果两种关联方式()
正确答案:×
答案解析:单选7
7、在关系型数据库中,多表之间存在着三种关联关系,分别为一对一、多对一和多对多()
正确答案:×
答案解析:一对多。。。
8、MyBatis映射文件中< association >元素的属性select用于指定引入嵌套查询的子SQL语句,该属性用于关联映射中的嵌套查询()
【ssm|Java web 作业6 答案详解】正确答案:√
9、当表中的列名与对应对象的属性名称完全一致时,在查询映射文件中可以不使用resultMap属性。
正确答案:√
10、以订单和商品为例,一个订单可以包含多种商品,所以订单和商品之间属于一对多关系。
正确答案:×

    推荐阅读