Hibernate递增插入,导致数据库中出现重复的行

时间:2015-10-06 23:00:14

标签: java hibernate

我的休眠时间里有一些奇怪的事情发生了。当我使用下面的方法时,每次调用它时,我的插入查询都会增加。

public void merge(Object entity) {
        session = HibernateUtil.getSessionFactory().getCurrentSession();
        session.beginTransaction();     
        session.merge(entity);
        session.getTransaction().commit();      
    }

我从我的servlet调用上面的内容。

并获取

Hibernate: insert into marker (organisation, projectId) values (?, ?)

如果我再打电话,我会

Hibernate: insert into marker (organisation, projectId) values (?, ?)
Hibernate: insert into marker (organisation, projectId) values (?, ?)

第三次

Hibernate: insert into marker (organisation, projectId) values (?, ?)
Hibernate: insert into marker (organisation, projectId) values (?, ?)
Hibernate: insert into marker (organisation, projectId) values (?, ?)

等等。所以看起来每次我合并它都会调用插入额外的时间。我可以在我的数据库记录中看到它确实增加了插入

我从servlet调用我的方法,如果这可能意味着什么。

1 个答案:

答案 0 :(得分:0)

使用saveOrUpdate显然修复了它。我不知道是什么造成的。