2013-04-09 91 views
0

我在我的项目中使用Hibernate。我得到了一个场景,我保存对象,休眠数据插入缓慢

remittanceTransactionDao.updateRemittanceTransaction(remittanceTransaction); 

然后调用需要访问上面正在更新的数据的存储过程。

remittanceTransactionDao.deductAgentCommission(remittanceTransaction.getRemittanceNo(), "ADD"); 

但在那个时候,第一个(更新)语句仍然没有在数据库中执行,因此该值以下方法无法找到。 Hibernate数据库更新速度缓慢还是实施差?我如何优化?

回答

0

休眠延迟更新到数据库,直到它真的有必要。这可以通过在事务回滚的情况下不进行不必要的更新以及通过批处理语句来提高性能。

要强制它将所有待处理的更改写入数据库,您需要致电Session.flush()

+0

解决方案非常简单。正如你所说,我称this.getsession.flush()并解决问题。谢谢 ! – 2013-04-10 03:00:18