第五章 Spring的事務管理--習題答案

課程介紹:“框架技術”是軟件工程專業的核心課程,是本專業限選課,是Java 應用開發課程,是本專業學生就業的主要方向。
說明:框架設計其他章節的習題答案也在此“spring框架設計”專欄。

一、 填空題

  1. 使用基於註解方式的事務管理需要在使用事務的Spring Bean類或者Bean類的方法上添加註解【 @Transactional】。
  2. Spring的聲明式事務管理可以通過兩種方式來實現,一種是基於XML的方式,另一種是基於【 Annotation】的方式。
  3. Spring2.0以後,提供了tx命名空間來配置事務,tx命名空間下提供了【 tx:advice】元素來配置事務的通知(增強處理)。
  4. 在Spring的所有JAR包中,包含一個名爲【 spring-tx.RELEASE.jar】的JAR包,該包就是Spring提供的用於事務管理的依賴包。
  5. 聲明式事務管理:是通過【AOP技術 】實現的事務管理。

二、 判斷題

  1. 基於XML方式的聲明式事務管理是通過在配置文件中配置事務規則的相關聲明來實現的。( √)
  2. 編程式事務管理是通過編寫代碼實現的事務管理,包括定義事務的開始、正常執行後的事務提交和異常時的事務回滾。( √)
  3. Spring的事務管理簡化了傳統的事務管理流程,並且在一定程度上減少了開發者的工作量。( √)
  4. Spring的聲明式事務管理可以通過兩種方式來實現,一種是基於XML的方式,另一種是基於Annotation的方式。( √)
  5. @Responsebody註解與@RequestMapping註解配合使用時,頁面中將可以獲取到方法的返回值。( √)

三、 選擇題

  1. 以下關於@Transactional註解可配置的參數信息及秒正確的是。( A)
    A: value用於指定需要使用的事務管理器,默認爲"";
    B: read-only用於指定事務是否只讀,默認爲true;
    C: isolation用於指定事務的隔離級別,默認爲Isolation.READ_COMMITTED;
    D: propagation用於指定事務的傳播行爲,默認爲Propagation. SUPPORTS;
  2. 以下基於XML方式的聲明式事務管理配置文件中tx:advice元素的子元素tx:method屬性描述錯誤的是。(B )
    A: name:該屬性爲必選屬性,它指定了與事務屬性相關的方法名
    B: propagation:用於指定事務的傳播行爲,它的默認值爲SUPPORTS
    C: isolation:該屬性用於指定事務的隔離級別,其默認值爲DEFAULT
    D: read-only:該屬性用於指定事務是否只讀,其默認值爲false
  3. 以下有關事務管理方式相關說法錯誤的是。( B)
    A: Spring中的事務管理分爲兩種方式:一種是傳統的編程式事務管理,另一種是聲明式事務管理。
    B: 編程式事務管理:是通過AOP技術實現的事務管理,就是通過編寫代碼實現的事務管理,包括定義事務的開始、正常執行後的事務提交和異常時的事務回滾。
    C: 聲明式事務管理:其主要思想是將事務管理作爲一個“切面”代碼單獨編寫,然後通過AOP技術將事務管理的“切面”代碼植入到業務目標類中。
    D: 聲明式事務管理最大的優點在於開發者無需通過編程的方式來管理事務,只需在配置文件中進行相關的事務規則聲明,就可以將事務規則應用到業務邏輯中。
  4. 以下有關Spring事務管理及核心接口說法錯誤的是。( D)
    A: PlatformTransactionManager接口是Spring提供的平臺事務管理器,主要用於管理事務。
    B: TransactionDefinition接口是事務定義(描述)的對象,該對象中定義了事務規則,並提供了獲取事務相關信息的方法。
    C: TransactionStatus接口是事務的狀態,它描述了某一時間點上事務的狀態信息。
    D: 在事務管理過程中,傳播行爲可以控制是否需要創建事務以及如何創建事務,通常情況下,對於數據的查詢、插入、更新和刪除操作,必須進行事務管理。
  5. 下列選項中,哪一個不是Spring中事務管理的核心接口。( D)
    A: PlatformTransactionManager
    B: TransactionDefinition
    C: TransactionStatus
    D: TransactionManager

四、 簡答題

1. 請列舉PlatformTransactionManager接口提供了有哪些事務操作方法,並對這些方法分別進行簡單說明。
PlatformTransactionManager接口中提供了三個事務操作方法,具體如下所示:
(1)TransactionStatus getTransaction(TransactionDefinition definition ):用於獲取事務狀態信息。
(2)void commit(TransactionStatus status):用於提交事務。
(3)void rollback(TransactionStatus status):用於回滾事務。

整理不易,如有幫助請點贊支持!

發佈了19 篇原創文章 · 獲贊 2 · 訪問量 963
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章