`

spirng 事务处理 aop

 
阅读更多

<?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:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="
     http://www.springframework.org/schema/beans
     http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
     http://www.springframework.org/schema/tx
     http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
     http://www.springframework.org/schema/aop
     http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
     http://www.springframework.org/schema/context
     http://www.springframework.org/schema/context/spring-context-2.5.xsd">
    
    <tx:annotation-driven transaction-manager="transactionManager" />
   
    <bean
        class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="locations">
            <list>
                <value>classpath:config/points.properties</value>
            </list>
        </property>
        <property name="ignoreUnresolvablePlaceholders" value="true" />
    </bean>

    <tx:advice id="txAdvice" transaction-manager="transactionManager">
        <tx:attributes>
            <tx:method name="*" propagation="REQUIRED" />
            <tx:method name="*RnTx" propagation="REQUIRES_NEW"
                rollback-for="FroadSQLException" />
                    <!-- 转赠积分事务处理 -->
            <tx:method name="doDonationApp" propagation="REQUIRED" rollback-for="FroadSQLException"/>
            <tx:method name="saveSplitTransPointsInfo" propagation="REQUIRES_NEW" />
            <tx:method name="saveDonationPotionsAuditNoId" propagation="REQUIRES_NEW" />
            <tx:method name="doDonationConfirm" propagation="REQUIRED" rollback-for="FroadSQLException"/>
            <!-- 提现申请 -->
            <tx:method name="doCashPointsApplication" propagation="REQUIRES_NEW"/>
            <tx:method name="refundCashApp" propagation="REQUIRES_NEW"/>
         
        </tx:attributes>
    </tx:advice>

    <!-- 积分账户操作 start -->
    <aop:config>
        <aop:pointcut id="userPointAccountServicePc"
            expression="execution(* com.froad.points.service2.impl.UserPointAccountServiceImpl.*.*(..))" />
       
        <aop:advisor advice-ref="txAdvice" pointcut-ref="userPointAccountServicePc" />
    </aop:config>
    <aop:config>
        <aop:pointcut id="userComplexServicePc"
            expression="execution(* com.froad.points.service2.impl.UserComplexServiceImpl.*.*(..))" />
       
        <aop:advisor advice-ref="txAdvice" pointcut-ref="userComplexServicePc" />
    </aop:config>
   
   
   
</beans>

分享到:
评论

相关推荐

    aop与spring事务处理

    ### AOP与Spring事务处理详解 #### 一、引言:为什么使用框架和设计模式? 在软件开发领域,设计模式和框架是两个重要的概念。设计模式作为一种指导思想,能够帮助开发者更好地解决常见的软件设计问题,确保系统...

    spring-boot aop

    在Spring框架中,AOP主要用于日志记录、事务管理、性能统计等场景。本示例是关于如何在Spring Boot项目中实现AOP功能的一个简单演示。 首先,我们需要了解AOP的基本概念。AOP的核心是切面(Aspect),它封装了跨越...

    Spring AOP配置事务方法

    Spring AOP 配置事务方法 Spring AOP(Aspect-Oriented Programming,面向方面编程)是一种编程范式,它允许开发者在不修改源代码的情况下,增强和修改应用程序的行为。 Spring AOP 提供了一种灵活的方式来实现事务...

    Java框架技术 Spring 学习案例 Spring AOP案例和Spring事务处理案例

    本教程主要聚焦于Spring框架的两大核心特性:Spring AOP(面向切面编程)和Spring事务处理,通过具体的应用案例来深入理解这两个概念。 首先,让我们详细探讨Spring AOP。AOP是面向切面编程的缩写,它允许程序员...

    spring-aop.jar

    在实际应用中,我们可以利用Spring AOP进行日志记录、事务管理、权限控制等。例如,通过定义一个切面类,包含前置通知记录方法调用日志,后置通知处理事务提交或回滚,以及异常通知进行异常处理。 四、实战案例 ...

    spring基于AOP实现事务

    对于Spring事务管理,我们通常有两种方式:编程式和声明式。编程式事务管理需要在代码中显式地调用begin、commit、rollback等事务控制方法,而声明式事务管理则是在配置文件或注解中声明事务规则,更加简洁且易于...

    简单spring aop 例子

    Spring AOP(面向切面编程)是Spring框架的重要组成部分,它提供了一种模块化和声明式的方式来处理系统中的交叉关注点问题,如日志、事务管理、安全性等。本示例将简要介绍如何在Spring应用中实现AOP,通过实际的...

    使用Spring的声明式事务----AOP方式

    本文将深入探讨如何利用Spring的声明式事务来处理业务操作中的数据一致性问题,以及相关源码解析。 首先,我们需要了解Spring的AOP概念。AOP是一种编程范式,它允许程序员定义“切面”,这些切面可以包含业务逻辑的...

    spring-aop-jar

    Spring AOP模块提供了实现AOP规范的功能,它允许开发者定义“切面”来封装系统中的横切关注点,如日志、事务管理等。该jar文件包含了Spring AOP的核心类和接口,如`org.springframework.aop.*`包下的`...

    java springAOP 事务+注释

    2. **Spring事务管理** 在Spring中,事务管理分为编程式和声明式两种。编程式事务管理需要在代码中显式地调用开始、提交、回滚等事务操作,而声明式事务管理则更简洁,通过配置或者注解即可实现,降低了代码的耦合...

    spring_aop.rar_spring_aop

    总之,Spring AOP是Spring框架中的一个重要特性,它使得开发者能够以声明式的方式处理系统的横切关注点,降低了代码的耦合度,提高了代码的复用性。通过深入理解和实践"spring_aop.rar_spring_aop"中的示例,开发者...

    spring ioc和aop原理流程图(详细)

    **面向切面编程(AOP)** 是Spring的另一个重要特性,它允许开发者将关注点(如日志、事务管理)与核心业务逻辑分离,实现代码的模块化。以下是Spring AOP的关键知识点: 1. **切面**:AOP中的切面是包含横切关注点...

    Spring aop、jdbc和事务tx练习

    本练习主要涵盖了Spring的三个方面:面向切面编程(AOP)、JDBC(Java Database Connectivity)以及事务管理(TX)。让我们详细探讨这些知识点。 1. **Spring AOP(面向切面编程)** 面向切面编程是Spring框架的一...

    Spring 2.5 AOP 例子

    Spring AOP提供了一种模块化和声明式的方式来实现横切关注点,如日志记录、事务管理、性能监控等。它通过切面(Aspect)将这些关注点与业务逻辑分离,降低了系统的耦合度。 二、类扫描功能 在Spring 2.5中,引入了...

    spring aop spring aop

    Spring AOP,全称Aspect-Oriented Programming(面向切面编程),是Spring框架的重要组成部分,用于实现横切关注点的模块化。它允许开发者定义“切面”,将那些与业务逻辑无关,却为多个对象共有的行为(如日志、...

    spring-aop.rar_aop1270_spring_spring aop

    Spring AOP,即Spring的面向切面编程,是Spring框架的重要组成部分,它提供了一种在不修改源代码的情况下,对程序进行功能增强或统一处理的方法。本文将围绕Spring AOP的源码分析,探讨其核心概念、工作原理以及在...

    spring aop jar 包

    Spring AOP(Aspect Oriented Programming,面向切面...总的来说,Spring AOP通过提供面向切面的编程能力,极大地提高了代码的可复用性和可维护性,降低了系统复杂度,特别是在处理共性问题如日志、事务、安全等方面。

    Spring ax/aop声明式事务配置实例

    在Spring框架中,AOP(面向切面编程)和声明式事务管理是两个核心特性,它们极大地简化了Java企业级应用中的事务处理。本实例将深入探讨如何在Spring中使用AOP来实现声明式事务配置。 一、Spring AOP基础 AOP允许...

    org.springframework.aop

    在Spring框架中,AOP(Aspect Oriented Programming,面向切面编程)是其核心特性之一,它允许开发者将关注点从主业务逻辑中分离出来,如日志、事务管理等,形成独立的切面,实现代码的解耦和模块化。本篇将深入探讨...

Global site tag (gtag.js) - Google Analytics