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='老王'}