Mybatis系列文章(4)-多表查询,一对多

Mybatis系列文章(4)-多表查询

1.实例

用户和账户
一个用户可以有多个账户
一个账户只能属于一个用户(多个账户也可以属于同一个用户)

2.步骤

1.建立两张表:用户表,账户表
让用户表和账户表之间具备一对多的关系,需要使用外键,在账户表中添加
2.建立两个实体类:用户实体类和账户实体类
让用户和账户的实体类能体现出一对多的关系
3.建立两个配置文件
用户和账户的配置文件
4.实现配置:
当我们查询用户是,可以同时得到用户所包含的账户信息
当我们查询账户是,可以同时得到账户的所属用户信息

3.实现

1.sql语句
select u.*,a.ID as aid,a.UID,a.money from account a,user u WHERE u.id = a.UID
2.xml语句

    <select id="findallAU" resultType="AccountUser">
        select u.address,u.username ,a.* from account a,user u WHERE u.id = a.UID
    </select>

需要在类中新建一个AccountUser类继承Account,然后添加上我们想要的user表的列名

3.结果

Account{id=1, uid=46, money=1000.0}   AccountUser{address='北京', username='老王'}
Account{id=2, uid=45, money=1000.0}   AccountUser{address='北京金燕龙', username='传智播客'}
Account{id=3, uid=46, money=2000.0}   AccountUser{address='北京', username='老王'}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值