當我們的專案開發有對資料庫的操作時,經常需要對事物進行管理;
使用spring框架,spring容器提供對事物進行管理的配置,使用簡單的配置便可將繁瑣的事物管理託管給spring容器;
spring提供兩種配置事物的方式,一種是採用註解方式,另一種是xml檔案配置方式;
採用註解方式配置步驟:
首先在spring的配置檔案中的beans標籤加入事物的命名空間:
xmlns:tx=""
xmlns:tx=""
xsi:schemalocation="
/spring-beans-3.0.xsd
/spring-context-3.0.xsd
/spring-aop-3.0.xsd
/spring-tx-3.0.xsd"
然後開啟事物註解引擎:
在所需事物管理的業務類中新增事物註解:
@service("personservice")
@transactional
public class personserviceimpl implements personservice ,
new int );
}
新增註解後,該類中的所有業務方法預設情況下都在各自的事物中,每個方法裡的操作公用乙個事物;
在預設情況下,在業務方法中如果丟擲了runtimeexception,業務操作會進行回滾;
如果丟擲的是checkedexception,業務操作不會進行回滾;
當然我們也能手動將事物操作配置成為我們所需要的:
可以再業務方法上新增註解,控制那種異常回滾,不會滾;該方法是否支援事物等:
@override
@transactional(norollbackfor=runtimeexception.class)
public void update(person person) ,
new int );
}
上面的註解表示丟擲執行期異常的時候不會滾,
@transactional(rollbackfor=exception.class)
表示checkedexception時,會滾;
同時還能控制方法不支援事物:
@transactional(propagation=propagation.not_supported)
預設情況下的所有方式採用的propagation是propagationreqired
Spring學習筆記六 註解
來學習註解了。spring配置 context component scan base package com.kudo context annotation config 衍生註解 component有幾個衍生註解,我們在web開發中,會按照mvc三層架構分層 1.dao repository 2...
Spring學習筆記5 註解方式AOP
第一步 註解配置業務類 使用 component pservice 註解productservice 類 1 package com.spring.service 23 import org.springframework.stereotype.component 45 component pser...
spring學習 二 註解方式
告訴spring用註解方式配置 product類的category屬性新增註解 註解方式一 autowired private category category 註解方式二 resource name c private category category 與之前相同 全部刪除,只新加一行即可,瀏...