1

我一次用数据库中的多个条目更新记录。当我尝试创建另一个多条记录时,重复的条目保存在数据库中。如何使用休眠防止记录重复条目。我想限制 2 个或更多列值不应该像以前一样

4

2 回答 2

1

在表上定义主键或至少是唯一约束是避免重复的最可靠方法。然后您的代码将抛出一些有用的错误,以便您正确处理事务。

于 2013-08-14T09:58:08.520 回答
1

使用唯一约束定义您的实体对象

    @Entity
    @Table(name="user_group", 
              uniqueConstraints = {@UniqueConstraint(columnNames = {"user_id", "group_id"})})
    public class UserGroup implements Serializable
    {

         User user //This is user model
         Group group // This is Group model 
             // Other fields
             // setter and getter methods.

    }

保存事务中的对象

 Session session = sessionFactory().openSession();
 session.beginTransaction();
 session.saveOrUpdate(listOfuserGroup);
 session.getTransaction().commit();
于 2013-08-14T10:24:53.947 回答