SSH整合Spring事務管理

2021-06-23 06:01:10 字數 2152 閱讀 8397

關於spring與struts的整合中,如何載入spring容器:

1)直接在action中獲取:

userbo =(userbo)contxt.getbean("userbo");

而且最重要的是spring是乙個容器,多個action會產生出來多個spring容器,多個spring容器如

何去管理struts和hibernate,struts和hibernate又如何知道它們會被哪乙個spring容器所管

理,這樣勢必會造成管理的混亂。對於web專案工程來說,只需乙個spring容器就能管理struts和

hibernate了。因此,直接在action中獲取spring容器是不可取的

2)通過struts-config.xml來使web容器載入spring ----使用spring容器外掛程式的方式

----使用控制器載入spring,告知struts將要被spring所管理

value="org.springframework.web.struts.delegatingrequestprocess

or"/>

classname="org.springframework.web.struts.contextloaderplugin"> 

--外掛程式方式

3)使用web.xml來使web容器載入spring 

a、 ----在web容器中告知spring容器將被載入進來並進行管理

springcontextservlet 

----乙個專門產生spring容器的servlet

org.springframework.web.context.contextloaderservlet

1 ----web容器一被載入,就將載入spring容器

contextconfiglocation

b、----使用***載入spring

org.springframework.web.context.contextloaderlistener

前提:容器支援servletapi2.3

spring事務管理:

1.spring 框架中,涉及到事務管理的 api 大約有100個左右,其中最重要的有三個:

transactiondefinition(給定的事務規則 )

platformtransactionmanag

er(按照……來執行提交或者回滾操作 )

transactionstatus(表示乙個執行著的事務的狀態)

2.platformtransactionmanag

er的實現類:

datasourcetransactionmanager:適用於使用jdbc和ibatis進行資料持久化操作的情況。

hibernatetransactionmana

ger:適用於使用hibernate進行資料持久化操作的情況。

jpatransactionmanager:適用於使用jpa進行資料持久化操作的情況。

另外還有jtatransactionmanager、jdotransactionmanager、jmstransactionmanager等等

宣告事務管理例項:

----產生transactionmanager

class="org.springframework.orm.hibernate3.hibernatetransactionmana

ger">

----注入sessionfactory

----引用事務管理器

class="org.springframework.transaction.interceptor.transactionproxyfactorybean"

abstract="true">

----注入transactionmanager

propagation_required

----將以get開頭的方法加入到事務中

propagation_required

----將以execute開頭的方法加入到事務中

----目標**物件,繼承引用事務管理器

----注入目標物件

事務級別:

SSH整合,spring事務管理不回滾問題

spring的事務回滾,當且僅當捕獲到runtimeexception型別異常時,才會回滾,對普通exception異常無效。以下是我service層捕獲異常,並丟擲runtimeexception異常到action層 override public void lock string id thro...

Spring事務管理

spring是ssh中的管理員,負責管理其它框架,協調各個部分的工作。今天一起學習一下spring的事務管理。spring的事務管理分為宣告式跟程式設計式。宣告式就是在spring的配置檔案中進行相關配置 程式設計式就是用註解的方式寫到 裡。下面先說宣告式 spring配置檔案中關於事務配置總是由三...

spring事務管理

一 xml配置事務 二 註解的方式配置事務 bean id txmanaager class org.springframework.orm.hibernate3.hibernatetransactionmanager property name sessionfactory ref session...