关于hibernate查询视图时,相同主键的两条记录映射问题【已解决】

做项目中间遇到一个很诡异的问题:

  有两个表:A和AHistory(A表记录删除后存入此表,A的历史表),当我复制一条记录到AHistory表时,此时A表和AHistory表两条记录id相同,后续通过修改操作将两表任意一条记录更新为不同的信息,但ID仍然相同此时,如果用hibernate映射到实体类中时,想象中的应该是两个不同的实体类,拥有不同的属性等。

  然而,当我在程序中查询这两条ID相同的记录后,所得到两个的hibernate映射实体类却完全相同。

  通过此问题,才知道hibernate会将查询的两条ID相同的记录当做一个对象处理,因此导致获取到两个完全相同的实体类,由此猜想,hibernate应该是通过主键去存储和获取映射对象的……

 

  以上观点若有不妥之处,敬请不吝赐教……

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。