Mybatis一对一和一对多
发布日期:2021-08-31 01:31:33 浏览次数:18 分类:技术文章

本文共 1681 字,大约阅读时间需要 5 分钟。

hot3.png

大神总结的真好:

简单总结:

1.association:一对一,“有一个”的关系。  如一个班级有一个老师:

  • property:对象属性的名称
  • javaType:对象属性的类型
  • column:所对应的外键字段名称
  • select:使用另一个查询封装的结果
public class Teacher {
  //定义实体类的属性,与teacher表中的字段对应
 private int id;
//id===>t_id
 private String name;
//name===>t_name.......}public class Classes {
  //定义实体类的属性,与class表中的字段对应
 private int id;
//id===>c_id
 private String name;
//name===>c_name
  /**
  * class表中有一个teacher_id字段,所以在Classes类中定义一个teacher属性,
  * 用于维护teacher和class之间的一5对一关系,通过这个teacher属性就可以知道这个班级是由哪个老师负责的
  */
 private Teacher teacher;...}
    
     
 select * from class c, teacher t where c.teacher_id=t.t_id and c.c_id=#{id}
 
 
 
 
 
 

2.collection一对多,“有多个”的关系。如一个班级有多个学生: ofType属性指定集合中元素的对象类型

public class Student {
  //定义属性,和student表中的字段对应
 private int id;
//id===>s_id
 private String name;
//name===>s_name.....}public class Classes {
  //定义实体类的属性,与class表中的字段对应
 private int id;
//id===>c_id
 private String name;
//name===>c_name
  /**
  * class表中有一个teacher_id字段,所以在Classes类中定义一个teacher属性,
  * 用于维护teacher和class之间的一对一关系,通过这个teacher属性就可以知道这个班级是由哪个老师负责的
  */
 private Teacher teacher;
 //使用一个List 集合属性表示班级拥有的学生
 private List  students;.....}

    
 
 select * from class c, teacher t,student s where c.teacher_id=t.t_id and c.C_id=s.class_id and  c.c_id=#{id}
 
 
 
 
 
 
 
 
 
 
 
 
 
 




转载于:https://my.oschina.net/langgege/blog/1088686

转载地址:https://blog.csdn.net/weixin_34056162/article/details/91953098 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:ESP8266简介
下一篇:Redis 总结精讲 看一篇成高手系统-4

发表评论

最新留言

第一次来,支持一个
[***.77.167.45]2022年05月29日 20时29分14秒