dljd_(057-061)_hibernate_关联关系映射-什么是关联关系

一、概念部分

  1.1关联关系:是使用最多的一种关系,非常重要。在内存中反映为实体间的关系,映射到DB中为主外键关系。实体间的关联,即对外键的维护。关联关系的发生,即对外键数据的改变。
  1.2外键:外面的主键,即使用其它表的主键值作为自己的某字段的取值。
   在一个对关联关系中,外键总是被定义在多方表中。例如,国家Country与城市City间的关系就属于一对多关联关系,外键字段一般情况下是被定义在City表中的。

二、外键是建立在多方表还是单方表

  外键肯定要建在多方表、如果建在单方表会出现数据的大量冗余。外键由多方表来维护。

三、关联关系的三种形式
  1对1 1对多 多对多

四、关联属性

     

五、关联方向
  5.1单相关联
    指具有关联关系的实体对象间的加载与访问关系是单向的。即,只有一个实体对象可以加载和访问对方,但对方不能访问另一方的。
  5.2双向关联
    指具有关联关系的实体对象间的加载与访问关系是双向的。即,任何一个放均可加载和访问另一方。这里的访问是setter/getter

 

六、关联关系的维护
  6.1java代码上的关联关系的维护
    a.set(b)a在维护反之 b.set(a)则b在维护  谁主动去关联谁去维护这个关系

    如果session.save()保存的是1方对象,那么维护关联关系的sql语句是update语句。如果session.save()保存的是多方对象,那么维护关联关系的sql语句是insert语句。

    谁在维护关联关系session.save()谁可以保证不会出错。
  6.2数据库的关联关系的维护

    数据库上关联关系的维护本质上就是对外键的维护。

转载于:https://www.cnblogs.com/aeon/p/10114004.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值