hibernate3.3.2学习笔记---联合主键

联合主键主要思想就是把主键换成一个类,在类里进行主键对应属性的集合。

在主键类里,要重写equals方法,hashCode方法,implements Serializable。

重写equals是为了在类中确保主键的唯一性,与数据库保持一致。

重写hashCode是为了:当对象被转载在hash表里,就会使用到。

Serializable是为了实现序列化。若是内存满了,就要把对象暂时写到硬盘上,就需要序列化,或者是通过网络序列到其他机上,也需要序列化。

在javabean里,要重新生成主键类的get  set方法。

较难的是对配置文件的修改。

composite-id 表示主键列表,name属性表示Student中的主键类的对象名称,k1,k2是主键类的两个主键属性。


<hibernate-mapping package="com.wanhao">
   <class name="Student">
         <composite-id  name="pk"  >
             <key-property name="k1"></key-property>
             <key-property name="k2"></key-property>
         </composite-id>
         <property name="id"></property>
          <property name="name"></property>
          <property name="age"></property>
   </class>

</hibernate-mapping>


还有在 Annocation 中联合主键。

在主键类实现 java.io.Serializable 上面写@Embeddable,然后在javabean里的主键类的get方法上@Id  就好。



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值