MyBatis多表操作xml方式

本质:配置结果集和实体类的映射关系,而在实体类中,存在实体的属性为另一个实体(或集合)的情况,使用resultMap进行配置,把结果集中的列名和实体类中的属性名进行映射。

一对一(多对一):

order类:

user类:

role类:

使用resultMap标签配置映射关系

resultMap标签

				   type 属性:指定封装的JavaBean的类型,可以使用别名

id子标签:用于指定主键列

						column属性:结果集中的列名
						property属性:JavaBean的属性名

result子标签:用于指定普通列

						column属性:结果集中的列名
						property属性:JavaBean的属性名

association标签:用于指定一对一的映射

				property属性:JavaBean的属性名,是嵌套的JavaBean的名称
				javaType属性:嵌套的JavaBean的类型

id子标签:用于指定主键列

								column属性:结果集中的列名
								property属性:JavaBean的属性名

result子标签:用于指定普通列

								column属性:结果集中的列名
								property属性:JavaBean的属性名

association标签另一种配置:

							select属性:指定另一个statement,调用它得到一个结果赋给嵌套的JavaBean属性
							column属性:指定调用statement时传递的参数,从结果集的列中获取

一对多(多对多)

使用resultMap标签配置映射关系(与上文一样)

collection标签用于指定一对多的映射

						property:JavaBean的属性名,是嵌套的JavaBean的名称
						ofType: 集合中泛型的类型

id子标签:用于指定主键列

								column属性:结果集中的列名
								property属性:JavaBean的属性名

result子标签:用于指定普通列

								column属性:结果集中的列名
								property属性:JavaBean的属性名

另一种配置

							select属性:指定另一个statement,调用它得到一个结果赋给嵌套的JavaBean属性
							column属性:指定调用statement时传递的参数,从结果集的列中获取

多对多:

posted @ 2020-02-18 15:13  卯毛  阅读(845)  评论(0编辑  收藏  举报