Hibernate主键之复合主键
在hibernate中复合主键的有两种实现方式(simple demo)
Composite-id class must implement Serializable
现分别用这两种实现方式举个栗子:
数据库中的选课表 score(s_id,c_id,s_score);其中PK(s_id,c_id) 学生编号与课程编号为复合主键
(1)基于持久化类属性的复合主键
JavaBean:
SC.hbm.xml
(2)基于主键类的复合主键
JavaBean:
主键类
SC.hbm.xml
<hibernate-mapping package="beans">
<class name = "SC" table="score">
<composite-id name="scPK" class="ScPK">
<key-property name="sid" column="s_id" type="string"></key-property>
<key-property name="cid" column="c_id" type="string"></key-property>
</composite-id>
<property name="score" column="s_score" type="int" length="3"></property>
</class>
</hibernate-mapping>
Notes: