1.一对一关联,2.一对多关联
关联关系的好处:
一对一关联的方式:
1.主键关联配置:
案例:
表结构:用户信息 T_USER,用户详情 T_USERDETAILS
步骤:
1.反向生成PO
2.添加类中关系
3.配置文件配置
· 主表中:主键生成策略
关系配置
从表中
测试:
cascade
cascade:级联关系 级联操作的4个值
all:所有情况下都进行的级联操作
none:所有情况下都不进行的级联操作
save-update:在save,update进行的级联操作
delete:中执行delete时进行的级联操作
添加
修改
删除
2.外键关联实现:
表结构,从表
java类中,添加属性,setter和getter方法
配置文件 ,主表
配置文件 ,从表
测试,查询
测试,添加
2.一对多关联:
1.1对多
案例表,部门表,员工表.反向生成代码
单向关联,主表配置
单向关联, 从表配置
配置一对多关联
inverse:是否放弃维护从表的外键
false:不放弃
true:放弃
cascade:级联 (影响从表数据)
删除主表同时删除从表数据:
inverse="false" cascade="all" 表示不放弃,删除主表,并从表外键值为null
inverse="true" cascade="all" 表示放弃,删除主表,不能删除从表
删除主表数据同时不删除从表数据,外键置空
inverse="false" cascade="none"
2.多对多,两个1对多
角色表
菜单表
添加角色同时添加对应的菜单
cascade="all" inverse="false"
cascade="all" inverse="true"
中间表没有值
3.总结
1对1:外键关联 为主
1对多:inverse的设置,维护方在多的一方,cascade="save-update" inverse="true"
多对多:cascade="none" inverse="false"