-
1.今日任务
-
1.一对一关联
-
关联关系的好处
-
一对一关联的方式
-
1.主键关联配置
-
案例
- 表结构
- 用户信息 T_USER
- 用户详情 T_USERDETAILS
- 步骤
- 1.反向生成PO
- 2.添加类中关系
- 3.配置文件配置
- 主表中
- 主键生成策略
- 关系配置
- 从表中
- 测试
-
cascade
- 添加
- 封装事物相关的方法
- 修改
- 删除
-
2.外键关联实现
-
表结构
- 从表
-
java类中
- 添加属性,setter和getter方法
-
配置文件
- 主表
- 从表
-
测试
- 查询
- 添加
- 修改和删除一样
-
2.一对多关联
-
1.1对多
-
案例表
- 部门表
- 员工表
-
反向生成代码
-
单向关联
- 主表找到从表
- 主表配置
- 从表配置
- 双向关联
-
添加数据
- inverse="false"
- 注意:如果改变了默认生成的属性,那么配置中对应的字段也要修改
- inverse="true"
- 解决方案
-
删除数据
- 删除主表同时删除从表数据
- inverse="false" cascade="all"
- inverse="true" cascade="all"
- 删除主表数据同时不删除从表数据,外键置空
- inverse="false" cascade="none"
-
实际开发过程中 inverse="true" 维护方交给人多的
- 学生记住老师容易还是老师记住学生容易
-
2.多对多
-
两个1对多
- 角色表
- 菜单表
-
添加角色同时添加对应的菜单
- cascade="all" inverse="false"
- cascade="all" inverse="true"
- 中间表没有值
-
3.总结
-
1对1
- 外键关联 为主
-
1对多
-
inverse的设置
- 维护方在多的一方,cascade="save-update" inverse="true"
-
多对多
- cascade="none" inverse="false"
- 2.作业
- 3.面试题