我正在使用彈簧EntityManager
並且需要提交方法完成記錄。這就是我對前::Spring EntityManager提交事務作爲方法完成
@Override
@Transactional
public void upsert(String lastSuccessfullRun) {
for(tableData in Tables){
insertIntoDB(tableData);
}
}
和方法,這兩種方法insertIntoDB包含實際執行更新查詢
@Override
@Transactional(propagation=Propagation.REQUIRES_NEW)
public void insertIntoDB (String tableData) {
em.persist(tableData)
}
的樓內設有商務邏輯但問題是,該方法不承諾,因爲它在upsert方法中返回下一個循環。
我該如何提交方法完成?
經過堅持,你可以嘗試'entityManager.getTransaction()。commit();',你也可以批量提交,而不是每個對象,如果有幾個。 –
@NayanWadekar由於我使用的是Spring EntityManager,我不能使用'getTransaction()'方法,它會拋出異常,因爲在spring容器之外無法管理事務。 –
對不起,Spring並沒有太多,這似乎相似 - http://stackoverflow.com/q/12897882/366964 –