MyBatis中的collection两种常用使用方法(非常详细)

本文详细介绍了MyBatis中处理一对多关系的两种常见方法。通过实例展示了如何使用collection标签的select属性进行联表查询,以及如何通过一次性执行SQL来获取数据。文中提供了相关实体类及XML配置,并给出了测试接口的说明。
摘要由CSDN通过智能技术生成

MyBatis中的collection两种常用使用方法

码云MybatisDemo: 用来学习springboot整合mybatis (gitee.com)

collection主要是应对表关系是一对多的情况

查询的时候,用到联表去查询

接下来的小案例包括:市,学校,医院(随便写的),写一个最简单的demo

主要的功能就是查询出所有的市以及对应的市下面所有的学校和医院

实体类:医院

@Data
@AllArgsConstructor
@NoArgsConstructor
public class Hospital {
    private int id;                 //医院编号
    private int urbanId;            //市的编号
    private String hospitalName;    //医院名称
    private Long people;            //医院人数
}

实体类:学校

@Data
@AllArgsConstructor
@NoArgsConstructor
public class School {
    private int id;               //学校编号
    private int urbanId;          //市的编号
    private String schoolName;    //学校名字
    private Long people;          //学校人数
}

实体类:市

@Data
@AllArgsConstructor
@NoArgsConstructor
public class Urban {
    private int id;                   //市的编号
    private String cityId;            //省的编号(此博文没用到)
    private String urbanName;         //城市名字
    private List<School> schools;     //对应的所有的学校
    private List<Hospital> hospitals; //对应的所有的医院
}

第一种方式,采用select

首先我们要在学校和医院接口对应的xml中写出按照

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值