2016-07-20 82 views
0

我在我的課程中使用了@Transactional並在多線程環境中使用它?據我瞭解,它將在線程本地環境中執行,並且是線程安全的。春@交易線程安全嗎?

現在我的用例是它從賬戶中提取金額?如果帳戶金額讀取很髒,是否會出現透支的情況?我不確定是否可以像現在這樣保持安全,或者我需要同步我的功能。

任何建議將被高度appericiated。

+1

Spring爲事務使用底層數據庫實現,因此它們與底層數據庫一樣是線程安全的。 – sturcotte06

+3

事務隔離是與線程安全不同的問題。 –

+1

內森是對的。看看你的數據庫提供的鎖定機制,你的數據庫訪問Java API(JPA,JDBC等) – davidxxx

回答

1

您需要設置事務隔離級別以防止數據庫髒讀,而不必擔心線程安全。數據庫負責處理這個問題的「髒讀」方面 - 而不是Spring的線程模型。