在我的代碼中,我一個接一個地更新兩個表。交易管理
update(table1_details);
update(table2_details);
因此,如果更新在table1中失敗,table2不應該更新或應該回滾。
如何處理這種情況。我知道我必須使用交易。有人可以幫助代碼! 我使用Java與春天和冬眠。
在我的代碼中,我一個接一個地更新兩個表。交易管理
update(table1_details);
update(table2_details);
因此,如果更新在table1中失敗,table2不應該更新或應該回滾。
如何處理這種情況。我知道我必須使用交易。有人可以幫助代碼! 我使用Java與春天和冬眠。
我不記得正確的API,但這樣的事情:
Transaction tx = em.getTransaction();
tx.begin();
try {
update1(); update2();
}
catch(Exception e) {
failed = true
}
finally {
if(!failed) tx.commit();
else tx.rollbacl();
}
問題有些寬泛,並有實現這一幾種方法,但我想:
SessionFactory
注入到DAO對象中。@Transactional
)。事情是這樣的:
@Transactional
public void doSomething() {
dao1.foo();
dao2.bar();
}
有關配置的詳細信息,請查看Spring文檔的Chapter 9. Transaction management。
問題在哪裏?你不能閱讀在線文檔嗎?例如:http://static.springsource.org/spring/docs/2.5.x/reference/transaction.html(第一個谷歌回答'春季休眠交易'搜索)! – Thierry 2010-04-14 19:50:40