当表存在复合主键时,Hibernate对其的处理稍微复杂一些。
1.POJO类得实现Serializable接口
2.POJO类得重写equals()方法和hashCode()方法
3.hbm文件中用<composite-id>节点配置复合主键信息
其中重写equals()方法和hashCode()方法可以使用commons-lang包来简化处理
以下是一个小例子:
其hbm配置文件代码为:
还有一种更好的方式是,将复合主键部分单独提出一个POJO类
person类
PersonKey类
hbm文件