Mybatis中的级联

级联


级联的好处:
  获取关联数据十分便捷
级联的坏处:
  级联过多会增加系统的复杂度,同时降低系统的性能,此增彼减,所以当级联的层级超过3层时,就不要考虑使用级联了,因为这样会造成多个对象的关联,导致系统的耦合、复杂和难以维护。在现实的使用过程中,要根据实际情况判断是否使用级联。


Mybatis中的级联


其分为3种:

  • 鉴别器(discriminator):它是一个根据某些条件决定采用具体实现类级联的方案,比如体检表要根据性别去区分。
  • 一对一(association):比如学生证和学生就是一种一对一的级联,雇员和工牌表也是一种一对一的级联。
  • 一对多(collection):比如班主任和学生就是一种一对多的级联。

注:mybatis没有多对的的级联。因为多对多的级联比较复杂,使用困难,而且可以通过两个一对多的级联进行替换,所有mybatis不支持多对多的级联。
学生信息关系表
                学生信息级联模型关系
分析学生信息级联模型:

  • 该模型是以学生表为中心。
  • 学生证表和学生表是一对一的关系;
  • 学生表和课程成绩表是一对多的关系;
  • 课程表和课程成绩表也是一对多的关系;
  • 每个学生都有一个健康表,随着学生表性别的不同,会有不同的关联表,鉴别学生的性别就是鉴别器;

猜你喜欢

转载自blog.csdn.net/pengzhisen123/article/details/80590973
今日推荐