多对一常见得实现方式:
第一种方式:多对一得级联属性
假设有学生表、班级表两张表:
1、在pojo 学生表得实体类中添加班级表得对象。
2、Student selectById(integer id);
3、关系映射如下
第二种方式:assation:
Mapper 接口保持不变,SQL文件修改即可。
一对多映射常见得包含以下二方式:
一对多常见得实现方式:
-
第一种实现方式:collection
-
第二种实现方式:分布查询
-
思路分析:
一对多:一在前.一是主表、多是副表。 主表:t_clazz 班级表 副表:t_stu 学生表
第一种方式:collection
第一步: java实体类编写方式:
public class clazz{
//班级id
private integer id;
//班级名称
private integer Name;
//学生集合
List<Student> stu;
}
第二步: clazz selectByCollection(integer id);
第三步: 编写SQL 映射文件:
二种方式: 分步查询:
1、先查询班级信息 2、编写一个Mapper接口封装学生信息为List query; 3、查询班班级信息
总结:
分步查询得优势就是代码复用
常用一对多得为第一种方式: 多对一得是级联属性