我在应用中发现也是的,当用saveOrUpdate方法更新数据时候,发现会新建一条数据,很奇怪,也希望高手指导下!
QQ;19812955
Email:[email protected]

解决方案 »

  1.   

    问题的原因可能出在OID上面,就是映射文件中的ID元素。如果数据库是用户自己输入主键值,那么Hibernate便无法判断当前实体是应该保存还是更新。因为Hibernate是按照主键字段是否为null值来决定保存或更新的。当用户自己填入主键值时,因为主键不允许为空,那么主键字段就永远不会为空。所以没法判断,能分开写尽量分开写吧。当然,也有解决的办法。具体的我没用过,不好乱说!
      

  2.   

    谢谢,我觉得也是OID出的问题。可是有没有好的解决方案呢?映射文件的主键字段要怎么写?