Spring事務管理有3個API,均為介面。 (1)PlatformTransactionManager 平臺事務管理器 常用的實現類: DataSourceTransactionManager:這個實現類是spring自帶的,底層使用JDBC管理事務 HibernateTransactionMan ...
Spring事務管理有3個API,均為介面。
(1)PlatformTransactionManager 平臺事務管理器
常用的實現類:
- DataSourceTransactionManager:這個實現類是spring自帶的,底層使用JDBC管理事務
- HibernateTransactionManage:這個實現類由Hibernate提供,需要Hibernate的支持,底層使用Hibernate管理事務
mybatis有2種方式管理事務:使用JDBC的事務管理、使用WEB容器(JBOSS,WebLogic等)的事務管理,都是使用別人的事務管理,mybatis本身並沒有提供事務管理。
(2)TransactionDefinition 事務定義
用於定義事務的相關信息,比如隔離級別、超時信息、傳播行為、是否只讀。
(3)TransactionStatus 事務狀態
用於記錄在事務管理過程中事務的狀態。
3個介面的關係:
事務管理器根據事務定義設置的規則來管理事務,在事務管理過程中,將事務的各種狀態記錄到事務狀態對象中。