2015-03-02 92 views
1

我有我做了以下this.getHibernateTemplate()。刪除(BP)不會刪除立即

// First delete the entry by 
this.getHibernateTemplate().delete(test); 

// In Next Line try to load the latest values by 
List<test> = this.getHibernateTemplate().find("from test"); 

在這種情況下的方法,被刪除的條目也被加載在測試對象的列表。我不希望刪除的條目被加載List<test> = this.getHibernateTemplate().find("from test");

+1

刪除後是否存在提交? – pL4Gu33 2015-03-02 13:36:17

+0

沒有。我不做任何承諾。 – 2015-03-02 14:06:34

回答

2

在提交或刷新之前,Hibernate不會執行刪除操作。您可以在刪除之後和呼叫查找之前調用會話的刷新。

+0

它也是關於不同的緩存。使用標準api發出的相同查詢應該*不*找到被刪除的實體IIRC。 – atamanroman 2015-03-03 13:34:19

0

添加了以下代碼以使其工作。

Transaction beginTransaction = this.getHibernateTemplate().getSessionFactory().getCurrentSession().beginTransaction(); 

// First delete the entry by 
this.getHibernateTemplate().delete(test); 

beginTransaction.commit(); 

// In Next Line try to load the latest values by 
List<test> = this.getHibernateTemplate().find("from test"); 
+0

因此沖洗不工作? – 2015-03-03 13:51:31

+0

我沒有嘗試過。我嘗試提交,它工作正常:)反正謝謝你的幫助。 – 2015-03-04 09:50:55