Java 使用hibernate在数据库中更新时如何避免重复记录
我正在用数据库中的多个条目一次更新记录。当我尝试创建另一个多个记录时,重复的条目会保存在数据库中。如何使用hibernate防止记录重复条目。我想限制2个或更多列的值不应像以前一样相等定义主键,或至少是唯一约束,在桌面上,这是避免重复的最可靠的方法。然后,代码将抛出一些有用的错误,以便正确处理事务。使用唯一约束定义实体对象Java 使用hibernate在数据库中更新时如何避免重复记录,java,database,hibernate,java-ee-6,hibernate-mapping,Java,Database,Hibernate,Java Ee 6,Hibernate Mapping,我正在用数据库中的多个条目一次更新记录。当我尝试创建另一个多个记录时,重复的条目会保存在数据库中。如何使用hibernate防止记录重复条目。我想限制2个或更多列的值不应像以前一样相等定义主键,或至少是唯一约束,在桌面上,这是避免重复的最可靠的方法。然后,代码将抛出一些有用的错误,以便正确处理事务。使用唯一约束定义实体对象 @Entity @Table(name="user_group", uniqueConstraints = {@UniqueCo
@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();
相关代码呢?您的插入方法是否已同步?@sureshatta用于一个市场id,我每月创建4个条目,如2013年8月1日至2013年8月31日。当我选择与其他日期(如2013年8月15日至2013年9月18日)相同的市场id时,允许以前的条目重复entry@JunedAhsanno insert methods not Synchronized在插入条目之前,您可以使用
Map
对中的现有条目检查其唯一性数据库我的主键id是唯一的…除了id和marketcode之外,我在数据库中插入的数据是相同的。我尝试使用uniqueconstraint…但没有成功