hibernate 映射,Hibernate的用于实体与关系映射的配置文件是
与单向一对一关联映射一样,双向映射依然可以采用两种方式实现:1、主键关联;2、唯一外键关联
1、主键关联
映射出的关系模型与单向一样:
映射文件与单向的区别在于:需要在卡片加入一对一的标签,指示冬眠将关联对象用户根据主键加载上来一对一。不影响存储,只影响加载
User.hbm.xml
?可扩展标记语言版本=1.0 ?
!DOCTYPE hibernate-映射公共
-//休眠/休眠映射 DTD 3.0//EN
http://冬眠。SourceForge。net/hibernate-mapping-3.0。 dtd
冬眠-映射包=com.jialin.hibernate
类名="用户"
id name=id
!-采用外国的策略,可以取得关联对象的主键-
发电机
!-财产代表要关联的对象-
param name=property 卡/param
/生成器
/id
属性名称=名称/
一对一name=card /
/类别
/休眠-映射
Card.hbm.xml
?可扩展标记语言版本=1.0 ?
!DOCTYPE hibernate-映射公共
-//休眠/休眠映射 DTD 3.0//EN
http://冬眠。SourceForge。net/hibernate-mapping-3.0。 dtd
冬眠-映射包=com.jialin.hibernate
class name=Card
id name=id
发电机/
/id
属性名=卡号/
!一对一不影响存储,只影响加载-
一对一name=person /
/类别
/休眠-映射
2、唯一外键关联
映射出的关系模型与单向一样:
映射文件:
User.hbm.xml
?可扩展标记语言版本=1.0 ?
!DOCTYPE hibernate-映射公共
-//休眠/休眠映射 DTD 3.0//EN
http://冬眠。SourceForge。net/hibernate-mapping-3.0。 dtd
冬眠-映射包=com.jialin.hibernate
class name=Person
id name=id
发电机/
/id
属性名称=名称/
多对一name= card unique= true /多对一
/类别
/休眠-映射
Card.hbm.xml
?可扩展标记语言版本=1.0 ?
!DOCTYPE hibernate-映射公共
-//休眠/休眠映射 DTD 3.0//EN
http://冬眠。SourceForge。net/hibernate-mapping-3.0。 dtd
冬眠-映射包=com.jialin.hibernate
class name=Card
id name=id
发电机/
/id
属性名=卡号/
!-必须指定一对一的
标签中的属性-参考属性为关系字段的名称-
一对一name= person property-ref= card /
/类别
/休眠-映射
下篇继续