在MyBatis中,多表关系没有像Hibernate中体现的那么明显,关系型数据库表与表之间的关系主要有:
1、一对一关系
账户表-----账户详情表
2、多对一关系
学生和班级
3、一对多关系
班级和学生
4、多对多关系
学生和课程
而在myBatis中只需记得2个标签即可实现多表关系:
1、association标记一对一或多对一
association其实就是标记当前的属性是一个对象,一般可用于一对一或多对一


一对一可以,多对一一样,其中javaType标记的属性的数据类型,不可省略。
2、collection实现一对多或多对多
该标签标记当前属性是一个集合,内容通过SQL查询而来。
下面配置体现一对多的关系实现:


其中,ofType:为集合中泛型的数据类型,也就是多的一方对应的类名。
3、collection和association嵌套使用
这个标签可以嵌套在一起使用,一般用来表达多对多的关系映射中:

