java映射关系有几种,hibernate中几种映射关系 讲解1

通常在数据库或者现实的实体关系中存在3种现象: 1-1  ,1-N , N-N  其中1对1的关系 好比一个丈夫 只有一个 妻子

,一个妻子也只有一个老婆,一对多的关系 就像 1个人能有多个 房子,而一个房子只能有一个房主, 多对多

好比一个班有多个老师来教,而一个老师能教多个班。

在实体设计中 也存在这样映射关系,一对一 用的比较少,一对多或者 多对多 用的比较常见。

先来介绍下一对一 ;

每种映射关系都存在 有连接表和无连接表 两种情况,下面我都讲解 无连接表的情况。

第一种情况; 基于外键的双向 关联

什么意思呢; 基于外键的关联好比 一个表的外键是另一个表的主键,学过数据库的朋友应该都知道这种主从表关系(父子表关系)。

数据的表设计就不多做解释了,下面着重讲解 映射文件的写法;

在hibernate框架中的我们都知道 一个表应该对应一个实体 即模型(bean) 所有主从表的话基本要设计两个bean对象,那么每个bean对象就必须写上一个xml问价作为hibernate框架 控制的桥梁。

在主表对应的bean对象的 xml文件的写法如下;

........

主bean 类的写法加上一个属性 表示 另一个 bean的 变量,在子bean中同样如此

" class="另一个bean对象的全路径" cascade="all" property-ref="在另一个bean中代表本类的变量名">

  cascade="all"表示 同步两个表

hibernate-mapping>

另一个bean ,即子表bean的xml文件的写法

主键生成策略:foreign

column=“外键名”

class="主bean的全路径">

2:基于主键的双向 1-1关联

什么是基于主键 ; 即一个表的主键是另一个的主键,一个的主键变化 另一个表也同时变化

xml写法

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值