Hibernate中如何处理一对多关系中的组合主键
来源:互联网 发布:杨东麟演的网络剧 编辑:程序博客网 时间:2024/05/17 05:04
前段时间碰到这个问题,主要是hbm文件的的写法问题。我建了两个表,parent中的Pid与child中的Cid是一对多关系,Child中的cid与otherid只组合主键.如下
parent表
字段名
类型
长度
Pid (PK)
Character
10
Name
Character
10
Child表
字段名
类型
长度
cid (PK)
Character
10
Otherid (PK)
Smallint
Name
Character
10
hbm文件:
Parent.hbm.xml
<?xml version="1.0" encoding="GB2312"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 2.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd">
<hibernate-mapping>
<class name="Parent" table="parent">
<id
name="pid"
column="pid"
type="string"
unsaved-value="any"
>
<generator class="assigned"/>
</id>
<property name="name"/>
<set name="children" cascade="all-delete-orphan" inverse="true" lazy="true" >
<key column="CID" />
<one-to-many class="Child"/>
</set>
</class>
</hibernate-mapping>
Child.hbm.xml
<?xml version="1.0" encoding="GB2312"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 2.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd">
<hibernate-mapping>
<class name="Child" table="child">
<composite-id name="childpk" class="Childpk" unsaved-value="any">
<key-many-to-one name="parent" class="Parent" column="cid" />
<key-property name="otherid" column="otherid" type="integer"/>
</composite-id>
<many-to-one name="parent" class="Parent" column="CID" cascade="save-update" not-null="true" update="false" insert="false" />
<property name="name" column="name" type="string" />
</class>
</hibernate-mapping>
这两个hbm文件里面主要是:Parent中的<set name="children" cascade="all-delete-orphan" inverse="true" lazy="true" >
<key column="CID" />
<one-to-many class="Child"/>
</set> 和Child中的<many-to-one name="parent" class="Parent" column="CID" cascade="save-update" not-null="true" update="false" insert="false" />
这两个构成一对多关系中组合主键的双向关联。另外在写PO类的时候要注意hashcode和equals写的正确
- Hibernate中如何处理一对多关系中的组合主键
- Hibernate中如何处理一对多关系中的组合主键
- hibernate基于主键的一对多关系
- hibernate中一对多关系
- hibernate中一对多等关系映射图和主键生成策略
- hibernate基于主键的一对多关系 补充
- Hibernate中的级联一对多关系
- hibernate中的一对多关联关系
- hibernate中的一对多(双向关系)
- hibernate之表关系中的一对多
- 【04】框架学习—Hibernate中处理一对多关系与多对多关系
- Hibernate中一对多的映射关系
- Hibernate 中一对多关系总结
- hibernate中一对多关系的映射
- hibernate中一对多关系的映射
- hibernate中一对多关系的映射
- hibernate中一对多关系的映射
- hibernate中一对多关系的映射
- .NET技术的进化(曾登高)
- 生成、打包、部署、及管理应用程序与类型学习笔记
- SQL Server FAQs and Tips
- 获得CPU的信息
- Perl and I[所有的PERL爱好者都应该看一看]
- Hibernate中如何处理一对多关系中的组合主键
- jsp---学习笔记(一)
- 2004年7月6日
- OOP: 限制对象属性的访问
- C++沉思录读书笔记(一)代理类
- Java学习之神奇的初始化
- Inber网址收藏夹
- 巴萨罗那:Deco来,Davis走!
- SQL Server的过程数据库自动备份(一)