习题
一、 填空题
1.MyBatis是通过<resultMap>元素的【 】子元素该元素来处理多对多关联关系的。
2.MyBatis是通过<resultMap>元素的【 】子元素该元素来处理一对一关联关系的。
3.在关系型数据库中,多对多关系会产生【 】表,引入两张表的主键作为外键,两个
主键成为联合主键或使用新的字段作为主键。
4.在关系型数据库中,一对一可以在【 】引入对方主键作为外键。
5.<collection>子元素的ofType属性与javaType属性对应,它用于指定实体对象中集合类
属性所包含的【 】。
二、判断题
1.MyBatis是同样是通过<resultMap>元素的<collection>子元素该元素来处理多对多关联关
系的。( )
2.MyBatis在映射文件中加载关联关系对象主要通过两种方式:嵌套查询和嵌套结果。( )
3.在关系型数据库中,一对多就是在“一”的一方,添加“多”的一方的主键作为外键。( )
4.MyBatis中<collection>元素的属性与<association>元素相同,且使用也很简单,同样有
嵌套查询和嵌套结果两种关联方式。( )
5.MyBatis是通过<resultMap>元素的<association>子元素该元素来处理一对一关联关系的。
( )
三、选择题
1.以下关于MyBatis映射文件中<association>元素属性的说明错误的是。( )
A: property:指定映射到的实体类对象属性,与表字段一一对应。
B: column:指定表中对应的字段。
C: javaType:指定映射到实体对象属性的类型。
D: fetchType:指定在关联查询时是否启用延迟加载。fetchType属性有lazy和eager两
个属性值,默认值为eager。
2.下面关于数据库中多表之间关联关系说法错误的是。( )
A: 一对一关联关系可以在任意一方引入对方主键作为外键。
B: 一对多关联关系在“一”的一方,添加“多”的一方的主键作为外键。
C: 多对多关联关系会产生中间关系表,引入两张表的主键作为外键。
D: 多对多关联关系的两个表的主键成可以为联合主键或使用新的字段作为主键。
3.下面关于Java对象之间的关联关系描述正确的是( )
A: 一对一的关系就是在本类和对方类中定义同一个类型的对象。
B: 一对多的关系就是一个A类类型对应多个B类类型的情况。
C: 多对多的关系只需要在一方的类中引入另一方类型的集合。
D: 多对多关联关系需要在本类中引入本类的集合。
4.下面属性中不属于<association>元素属性的是。( )
A: property
B: column
C: ofType
D: javaType
5.下面关于<collection>元素的描述正确的是。( )
A: MyBatis就是通过<collection>元素来处理一对多关联关系的。
B: <collection>元素的属性与<association>元素完全相同。
C: ofType属性与javaType属性对应,它用于指定实体对象中所有属性所包含的元素类型。
D: <collection >元素只能使用嵌套查询方式。
四、简答题
1.请简要说明MyBatis在映射文件中加载关联关系对象的方式。

