hibernate配置联合主键

首先要看这样一个问题"同样的SQL 在hibernate执行的结果和在PLSQL Developer中执行的结果完全不同".产生的原因是什么呢?

我的神啊,纠结...

还好,第二天,在仔细检查的时候发现了问题产生的原因.是因为数据库的一张表中,有相同的主键,原来这里是要设置联合主键的....

那联合主键到底是什么东东呢?这个问题,有兴趣的同学可以去查找一下相关资料,至于在实体对应的配置文件中如何进行配置呢,参考如下:

hibernate配置联合主键_第1张图片

联合主键是配置好了,可是与之对应的实体类该怎么去写呢?

<composite-id></composite-id>中有一个name属性和一个class属性,至于怎么对应的,看一下 下面几个截图我想就应该会很明了了.


hibernate配置联合主键_第2张图片


hibernate配置联合主键_第3张图片

这个FlowFormInstancePK的hashCode()/toString()/equals(Object obj)方法需要进行重写..

你可能感兴趣的:(hibernate配置联合主键)