用saveorupdate编辑信息的时候每次都执行save,是怎么回事? 
我用这个方法编辑用户资料,每次都会再增加一条记录,原来的没有改动,只是在下面又增加了一条改动后的,改怎么解决?

解决方案 »

  1.   

    如果是更新数据,你一般都要先根据某个查询条件把对应的记录对象查出来,然后再修改一些你需要的属性,
    这样,当你调用saveOrUpdate方法的时候就会执行update的,如果你都是new一个对象,然后执行saveOrUpdate
    方法,那当然会增加一条记录
      

  2.   

    楼上说得对,其实你还可以这样,一般Hibernate是根据id来判断执行save还是update的。
    你的可以新建一个对象,但是新建的对象id要和原对象的id相同,那么这时就会执行update方法。