我的休眠时间里有一些奇怪的事情发生了。当我使用下面的方法时,每次调用它时,我的插入查询都会增加。
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调用我的方法,如果这可能意味着什么。
答案 0 :(得分:0)
使用saveOrUpdate显然修复了它。我不知道是什么造成的。