`

Spring中配置自动的事务代理

    博客分类:
  • Java
阅读更多

公司项目中配置了Spring 的事务代理, 不用在数据库操作的时候麻烦写很多的事务开始和回滚的代码了。

 

<!--事务管理器-->

    <bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <property name="dataSource">
            <ref local="dataSource"/>
        </property>
    </bean>

<!--这里定义拦截所有的方法-->

    <bean id="txInterceptor" class="org.springframework.transaction.interceptor.TransactionInterceptor">
        <property name="transactionManager">
            <ref bean="txManager"/>
        </property>
        <property name="transactionAttributes">
            <props>
                <prop key="*">PROPAGATION_REQUIRED,-Exception</prop>
		<!--<prop key="update">PROPAGATION_REQUIRED</prop>-->
		<!--<prop key="delete">PROPAGATION_REQUIRED</prop>-->
            </props>
        </property>
    </bean>

<!--拦截所有名称以Service结束的类-->

    <bean id="txBeanNameProxyCreator" class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
        <property name="interceptorNames">
            <list>
                <value>txInterceptor</value>
            </list>
        </property>
        <property name="beanNames">
            <value>*Service</value>
        </property>
    </bean>

 

 

详解见另外一篇博客:

 

http://taoistwar.iteye.com/blog/323729

 

 

分享到:
评论

相关推荐

    Spring 事务代理配置

    在深入探讨Spring事务代理配置之前,我们先简要回顾一下Spring...通过以上步骤,我们就可以在Spring中成功配置事务代理,使得应用程序中的业务方法能够自动进行事务管理,极大地提高了代码的可维护性和事务的一致性。

    在Spring中配置Hibernate事务

    在Spring配置中定义一个HibernateTransactionManager实例,将SessionFactory注入其中。例如: ```xml &lt;bean id="transactionManager" class="org.springframework.orm.hibernate5.HibernateTransactionManager"&gt; ...

    spring 事务代理配置

    1. **定义数据源**:首先,需要在Spring配置文件中定义数据源。数据源是所有数据库交互的基础,这里使用`DriverManagerDataSource`作为示例,它可以通过简单的属性设置来连接数据库。 2. **创建SessionFactory**:...

    Spring事务五种不同的代理配置

    Spring 会自动创建基于接口的代理,这样就可以在调用接口方法时触发事务管理。 第四种方式:基于类的代理 这种方式适用于不使用接口的情况。在类上直接使用 @Transactional 注解,Spring 会创建基于类的代理,但是...

    spring事务与数据库操作

    4. **配置目标类**:在Spring配置文件中配置目标类。 5. **开启AOP注解自动代理**:通过`&lt;aop:aspectj-autoproxy/&gt;`启用AspectJ注解的支持。 6. **编写切面类**:定义一个切面类,并使用`@Aspect`注解标注。 7. **...

    spring事务配置的5中方式

    在Spring中,事务配置主要涉及到三个核心组件:DataSource、TransactionManager和代理机制。下面将详细介绍Spring的五种事务配置方式。 1. **基于XML的事务配置** - **每个Bean都有一个代理**: 在这种配置方式中...

    JavaEE spring半自动实现AOP代理

    本篇将深入探讨如何在Spring中半自动地实现AOP代理。 首先,理解AOP的概念是至关重要的。AOP通过将关注点(如日志)与核心业务逻辑分离,提高了代码的可读性和可维护性。在Spring中,AOP代理有两种实现方式:JDK...

    Spring基于XML方式配置事务

    在Spring配置文件中,我们需要引入`tx`命名空间,并声明一个`PlatformTransactionManager`实例,例如,对于基于JDBC的事务管理,我们会使用`&lt;bean id="transactionManager" class="org.springframework.jdbc....

    spring声明事务的配置

    在Spring 1.x中,声明式事务有两种主要的配置方式,第一种是通过XML配置逐个为每个业务类创建事务代理。首先,你需要声明一个事务管理器,如`HibernateTransactionManager`,然后定义业务层的bean,并为其创建一个...

    spring 的自动代理

    Spring 框架的自动代理是其 AOP(面向切面编程)功能的一部分,它允许开发者在不修改原有代码的情况下,通过代理对象插入额外的功能,如日志、事务管理等。`DefaultAdvisorAutoProxyCreator` 是 Spring 自动代理实现...

    Spring实现自动代理Demo

    在Spring框架中,自动代理是一种重要的特性,它允许我们在不修改原有代码的情况下,为bean添加额外的功能,如事务管理、AOP(面向切面编程)等。本篇将深入探讨如何利用Spring实现自动代理,特别是关注`...

    spring 事务(6中配置完全降解)

    `DefaultAdvisorAutoProxyCreator`是Spring AOP中用于自动创建代理的组件,它会寻找所有`Advisor`(包括事务增强`Advisor`),并将它们应用到相关的bean上。这样,我们可以通过定义`Pointcut`来决定哪些方法需要...

    Spring事务原理、Spring事务配置的五种方式

    Spring事务原理是指Spring框架中的一种机制,用于管理事务,并提供了多种配置方式。事务是指一系列的操作,作为一个整体执行,如果其中某个操作失败,整个事务将回滚。Spring事务原理围绕着两个核心:...

    Spring事务配置的五种方式

    在业务类的方法上添加 `@Transactional` 注解,Spring 将自动创建事务代理。这种方式简化了配置,使得事务管理更直观。示例如下: ```java @Service public class UserService { @Autowired private UserDao ...

    spring 事务管理例子(TransactionProxyFactoryBean代理机制 和 tx/aop)

    在`tx`和`aop`的配合下,Spring会通过AOP代理拦截带有`@Transactional`的方法调用,根据注解中的配置启动一个新的事务,执行方法,如果方法正常结束则提交事务,遇到异常则回滚事务。 在基于Struts1.2和Spring2.0的...

    Spring中的四种声明式事务的配置

    这是最常见的一种方式,通过`TransactionProxyFactoryBean`来创建一个事务代理。如示例代码所示,首先定义了一个`transactionManager`的bean,它是事务管理器,负责实际的事务控制。然后创建`fundServiceDAOProxy`...

    spring基于AOP实现事务

    1. **定义事务配置**:在Spring配置文件中,我们需要配置事务管理器。通常,对于Spring JDBC或者Hibernate,我们会使用PlatformTransactionManager,如DataSourceTransactionManager。 ```xml ...

    Spring的事务配置的五种方式

    在给定的示例中,`TransactionProxyFactoryBean`被用来创建一个事务代理,它将目标DAO对象(如`userDaoTarget`)包装起来,当调用DAO方法时,自动开启、提交或回滚事务。以下是如何配置的示例: ```xml ...

    spring mvc+hibernate实现事务管理(配置文件版)

    配置文件中,我们需要定义DataSource、SessionFactory、HibernateTransactionManager等Bean,并开启事务代理。 接下来,整合MyEclipse生成的包和配置文件,通常包括以下步骤: 1. 创建Spring的上下文配置文件,例如...

    spring配置事务五种方式.doc

    这样,带有@Transactional注解的类或方法将会自动地被Spring事务代理处理。 3. **编程式事务管理** 编程式事务管理允许在代码中显式地开始、提交、回滚事务。使用PlatformTransactionManager接口的实现,如...

Global site tag (gtag.js) - Google Analytics