阶段3 1.Mybatis_09.Mybatis的多表操作_2 完成account表的建立及实现单表查询
Posted wangjunwei
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了阶段3 1.Mybatis_09.Mybatis的多表操作_2 完成account表的建立及实现单表查询相关的知识,希望对你有一定的参考价值。
mybatis中的多表查询:
示例:用户和账户
一个用户可以有多个账户
一个账户只能属于一个用户(多个账户也可以属于同一个用户)
步骤:
1、建立两张表:用户表,账户表
让用户表和账户表之间具备一对多的关系:需要使用外键在账户表中添加
2、建立两个实体类:用户实体类和账户实体类
让用户和账户的实体类能体现出来一对多的关系
3、建立两个配置文件
用户的配置文件
账户的配置文件
4、实现配置:
当我们查询用户时,可以同时得到用户下所包含的账户信息
当我们查询账户时,可以同时得到账户的所属用户信息
示例:用户和角色
一个用户可以有多个角色
一个角色可以赋予多个用户
步骤:
1、建立两张表:用户表,角色表
让用户表和角色表具有多对多的关系。需要使用中间表,中间表中包含各自的主键,在中间表中是外键。
2、建立两个实体类:用户实体类和角色实体类
让用户和角色的实体类能体现出来多对多的关系
各自包含对方一个集合引用
3、建立两个配置文件
用户的配置文件
角色的配置文件
4、实现配置:
当我们查询用户时,可以同时得到用户所包含的角色信息
当我们查询角色时,可以同时得到角色的所赋予的用户信息
新建Account表
DROP TABLE IF EXISTS `account`;
CREATE TABLE `account` (
`ID` int(11) NOT NULL COMMENT ‘编号‘,
`UID` int(11) default NULL COMMENT ‘用户编号‘,
`MONEY` double default NULL COMMENT ‘金额‘,
PRIMARY KEY (`ID`),
KEY `FK_Reference_8` (`UID`),
CONSTRAINT `FK_Reference_8` FOREIGN KEY (`UID`) REFERENCES `user` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
insert into `account`(`ID`,`UID`,`MONEY`) values (1,46,1000),(2,45,1000),(3,46,2000);
查看外键Foreign Keys。外键是UID这个。引用user表的id字段。
新建工程
复制前的src下的代码过来
pom.xml的依赖也拷贝过来。
代码调整。IUserDao进行删减。
只保留两个方法的
改成resultType
重新修改user实体类。保证字段和数据库对应。然后重新生成getter和setter和toString方法
Account实体类建立
生成getter和setter还有toString方法
生成IAccountDao接口
复制一个IUserDao.xml文件。改改名字叫做IAccountDao.xml
以上是关于阶段3 1.Mybatis_09.Mybatis的多表操作_2 完成account表的建立及实现单表查询的主要内容,如果未能解决你的问题,请参考以下文章
阶段3 1.Mybatis_09.Mybatis的多表操作_8 mybatis多对多操作-查询角色获取角色下所属用户信息
阶段3 1.Mybatis_12.Mybatis注解开发_3 mybatis注解开发保存和更新功能
阶段3 1.Mybatis_01.Mybatis课程介绍及环境搭建_04.mybatis概述
阶段3 1.Mybatis_07.Mybatis的连接池及事务_1 今日课程内容介绍