Snail—Hibernate之实体关系配置

Hibernate框架很好用,初识的感觉就是,在你配置好的情况下,它可以自动帮你封装实体,也可以自动在你指定的实体内封装另一个实体

下面就来稍微研究一下(以下的字段都必须有set/get方法)

首先看一下我的主要实体类Employee Employee与Department的关系为many-to-one

Employee的hbm.xml配置文件如下-----

第一行:name代表的是上图中那个department字段,class不言而喻

第三行:column指的是Employee表中对应的列名

我们拿Department类来写,Employee对应一个Department,而Department对应多个Employee

Department实体类,所以要写Set<Employee> empSet字段

Department.hbm.xml

第二行:empSet对应是此实体的字段值

第五行:对应的是外键的列名

第七行:对应的是多方的实体

-----------------------------------------------------------

一对一关系Employee和Check_Card(员工卡)

Check_Card.java

在Employee.hbm.xml添加如下

而在Check_Card.hbm.xml添加如下------------多对一是一对一的特例

------------------------------------------------------------------------------------------

自连接,接下来拿Department实体做例子,因为部门有若干个子部门,和一个上级部门-----Department实体类在上面

下面就来看看它的hbm.xml文件,代码跟之前的一样。这就不多说了。。

接下来,就说一说上面的  fetch和lazy 上面写的都是默认值

fetch抓取策略分为 select和join

join-----在你得到一个实体后,与之相关的数据会一起通通封装进去

lazy-----只有fetch为select的情况下,才可以使用lazy,在你用不到相关数据时,暂时不会给你抓取


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值