首先聲明:java
Checked異常繼承java.lang.Exception類。Unchecked異常繼承自java.lang.RuntimeException類。session
而,Spring的事務實現採用基於AOP的攔截器來實現,若是沒有在事務配置的時候註明回滾的checked exception,hibernate
那麼只有在發生了unchecked exception的時候,纔會進行事務回滾。繼承
事務不起做用可能緣由:事務
1.上述的異常問題。io
2.方言問題。class
3.MySQL引擎問題:MyISAM不支持事務。配置
4.hibernate.current_session_context_class屬性問題。exception