0

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

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

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

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

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

4

1 回答 1

1

它正在创建新记录,因为它具有不同的 ID,我假设像休眠映射一样

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

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

于 2012-12-27T13:02:32.880 回答