Hibernate saveOrUpdate()不起作用

时间:2012-12-27 09:48:20

标签: hibernate

我在使用saveOrUpdate()方法时遇到问题:

我有表user,由Hibernate自动生成:

 ________
|  User  |
|________|
|Id      |
|Name    |
|Address |
|________|

我可以成功保存[Mohan, BTM] - 创建行[1, Mohan, BTM]

但是,当我更新数据库[1, Mohan, EC]中的相同记录时,而不是更新第1行,而是创建一个新行:[2 , Mohan, EC]

1 个答案:

答案 0 :(得分:1)

它正在创建新记录,因为它有不同的id,我假设像hibernate映射

<id name="id" column="id">
        <generator class="native"></generator>
    </id> 

当对象具有不同的id时,它将被视为新记录。上面的映射会自动生成一个id,当你尝试更新同一个对象时,你必须显式设置对象id。