您的位置:首页 > 编程语言 > Java开发

Spring事务

2015-08-31 17:18 721 查看
一、Spring的xml头配置需要增加tx命名空间

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx" xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.2.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd"
default-autowire="byName">


二、配置注解事务

1、XML配置

其中<tx:annotation-driven transaction-manager="transactionManager" />告诉Spring检查上下文中所有的Bean并查找使用@Transactional注解的Bean,

不管是方法级别的还是类级别的。需要将数据源配置在这个标签中。

在方法上标注@Transactional就会在方法前后加事务,类上的话会在类的所有方法上前后加上事务。

1)Spring的xml配置(适用于JDBC、Mybatis)

<!-- 注解方式配置事务 -->
<tx:annotation-driven transaction-manager="transactionManager" />
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dynamicDataSource"/>
</bean>

2)Spring的xml配置(适用于Hibernate)
<bean id="txManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
<tx:annotation-driven transaction-manager="txManager"/>

2、代码中注解配置

在需要的方法或者类上表注上@Transactional

类上标注说明这个类的方法都是支持事务的,方法上加的话说明这个方法是支持事务的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  spring 事务