一、聲明式事務管理的概括
聲明式事務(declarative transaction management)是Spring提供的對程序事務管理的方式之一。
Spring的聲明式事務顧名思義就是采用聲明的方式來處理事務。這里所說的聲明,就是指在配置文件中聲明。用在Spring配置文件中聲明式的處理事務來代替代碼式的處理事務。這樣的好處是,事務管理不侵入開發的組件,具體來說,業務邏輯對象就不會意識到正在事務管理之中,事實上也應該如此,因為事務管理是屬於系統層面的服務,而不是業務邏輯的一部分,如果想要改變事務管理策划的話,也只需要在定義文件中重新配置即可;在不需要事務管理的時候,只要在設定文件上修改一下,即可移去事務管理服務,無需改變代碼重新編譯,這樣維護起來極其方便。
Spring使用AOP來完成聲明式的事務管理,因而聲明式事務是以方法為單位,Spring的事務屬性自然就在於描述事務應用至方法上的策略,在Spring中事務屬性有以下四個參數:
1.傳播行為
2.隔離級別
3.只讀提示
4.事務超時期間
二、aop聲明式事務所需的jar包
1、aopalliance.jar 這個包是AOP聯盟的API包,里面包含了針對面向切面的接口。(通常Spring等其它具備動態織入功能的框架依賴此包)
2、aspectjrt.jar 處理事務和AOP所需的包
3、aspectjweaver.jar 處理事務和AOP所需的包
4、cglib-nodep.jar spring中自動代理所需jar包
三、使用aop的方式配置
1、本例:在NewsDaoImpl類中一個showAllNews方法
2、我們要將核心關注點和橫切關注點進行分離
3、配置spring配置文件