前段时间在工作中遇到需要一对多关联查询的情况,百度了好久遇到各种坑,所以在此记录一下,话不多说直接开始
首先,先建几个测试类,主子表通过grade_id关联,具体属性注释我就省略不写了,大家能看懂
@Data
@TableName("grade")
public class Grade implements Serializable {
private Long id;
private String name;
private String address;
}
- 子表1
@Data
@TableName("teacher")
public class Teacher implements Serializable {
private Long id;
private String name;
private Integer age;
private String categroy;
private Integer level;
private Long gradeId; // 关联主表id
}
- 子表2
@Data
@TableName("student")
public class Student implements Serializable {
private Long id;
private String name;
private Integer age;
private String address;
private Long gradeId; // 关联主表id
}
- 表结构和实体类一样我就不放了,没啥特别的
其次,创建一个DTO用来接收查询出来的结果,这个大家都懂,不解释