2011-02-15 50 views
0

我正在使用Jetty和mysql。我需要一些基本的事務支持,並且jetty在啓動時警告我沒有使用事務管理器。我以爲交易是原生的MySQL?我想喜歡的事:jdbc - 我們的Web服務器用於數據庫事務所需的事務管理器?

Connection conn = ...; 

conn.setAutoCommit(false); 

// insert into table foo some data 
// insert into table grok some data 

conn.commit(); 

如果異常這兩種說法之間拋出,我看到的數據做出了進入表「富」,因此事務呼叫沒有工作。

所以我想我們確實需要一個事務管理器在這裏,我的理解是否正確?如果是這樣,我一直在尋找bitronix:http://docs.codehaus.org/display/BTM/Home

感謝

回答

1

交易不是 「本土」 到MySQL(不像其他的數據庫)。

您需要確保您使用的是InnoDB存儲引擎,否則您將無法使用事務。

+0

好的,所以我確實需要外部事務管理器,對吧? – user291701 2011-02-15 23:36:33