`

spring中对方法的事务拦截配置

阅读更多
引用
在applicationContext.xml中配置如下:

	<!--hibernate 事务-->
	<bean id="HibernateTransactionManager"
		class="org.springframework.orm.hibernate3.HibernateTransactionManager">
		<property name="sessionFactory" ref="sessionFactory" />
	</bean>

	<!-- 事务拦截,以下面固定格式开头的方法都在事务包含之列 -->
	<tx:advice id="HiberbateTxAdvice"
		transaction-manager="HibernateTransactionManager">
		<tx:attributes>
			<tx:method name="insert*" rollback-for="Throwable" />
			<tx:method name="update*" rollback-for="Throwable" />
			<tx:method name="delete*" rollback-for="Throwable" />
			<tx:method name="add*" rollback-for="Throwable" />
			<tx:method name="save*" rollback-for="Throwable" />
			<tx:method name="remove*" rollback-for="Throwable" />
			<tx:method name="modify*" rollback-for="Throwable" />
			<tx:method name="*" read-only="true" />
		</tx:attributes>
	</tx:advice>         

 <!-- 事务覆盖范围:com.kedacom.kdkk.service包下面的所有类 -->
	<aop:config proxy-target-class="true">
		<aop:pointcut id="serviceOperation"
			expression="execution(* com.kedacom.kdkk.service..*.*(..))" />
		<aop:advisor pointcut-ref="serviceOperation"
			advice-ref="HiberbateTxAdvice" />
	</aop:config>

引用
注:当方法内抛出运行时异常时,事务便会回滚。
分享到:
评论

相关推荐

    spring3.0两种事务管理配置

    这种方法不需要对原有的业务做任何修改,通过在 XML 文件中定义需要拦截方法的匹配即可完成配置。要求是,业务处理中的方法的命名要有规律,比如 setXxx,xxxUpdate 等等。 在 Spring 配置文件中,我们需要定义事务...

    springboot+aspect实现springaop拦截指定方法.zip

    在这个模块中,我们可以找到配置文件(如`application.yml`或`application.properties`)、Spring Boot主类、Aspect类(定义切面和通知)、业务服务类(包含被拦截的方法)以及可能的自定义注解。 综上所述,...

    在自定义spring aop中使用el获取拦截方法的变量值。

    标题中的“在自定义Spring AOP中使用EL获取拦截方法的变量值”指的是在Spring的面向切面编程(AOP)中,通过Expression Language(EL,表达式语言)来访问被拦截方法的局部变量值。这通常涉及到Spring的代理机制、...

    spring声明事务的配置

    Spring的声明式事务管理基于其面向切面编程(AOP)框架实现,事务管理器会拦截事务方法的调用,根据配置的事务属性自动进行事务的开启、提交、回滚等操作。 7. **Spring 2.x及更高版本的改进** 随着Spring的发展,...

    mybatis 拦截器 + spring aop切面 + spring事务+ 反射工具类

    例如,可能会有一个自定义的MyBatis拦截器用于分页查询,一个Spring AOP切面用于记录操作日志,Spring事务管理确保数据的一致性,而反射工具类可能用于动态加载配置或处理某些通用的反射任务。通过这些组件的组合,...

    Spring Mvc AOP通过注解方式拦截controller等实现日志管理

    本教程将详细介绍如何利用注解来配置和使用AOP来拦截Controller层的方法,以便记录执行过程中的相关信息,实现日志管理。 一、Spring AOP基础 AOP是Spring框架的核心组件之一,它允许程序员定义“切面”,这些切面...

    Spring源代码解析(六):Spring声明式事务处理.doc

    在 setTransactionAttributes 方法中,我们可以看到 Spring 把在 bean 配置文件中读取的事务管理的属性信息注入到 TransactionInterceptor 中去。这使得 TransactionInterceptor 可以使用这些属性信息来管理事务。 ...

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

    本篇文章将详细解析Spring中的六种事务配置方法,帮助开发者深入理解并掌握Spring事务的运用。 1. **基于XML的事务配置** Spring支持通过XML配置来管理事务,这是最基础的配置方式。在`spring`的配置文件中,我们...

    spring aop切面拦截指定类和方法实现流程日志跟踪

    本节将详细介绍如何使用Spring AOP实现流程日志跟踪,主要关注于如何通过AOP拦截特定的类和方法来进行日志记录。 ##### 3.1 配置Spring AOP 在Spring配置文件中定义切面和切入点表达式是非常关键的一步。一般来说...

    Spring 事务代理配置

    在深入探讨Spring事务代理配置之前,我们先简要回顾一下Spring框架的核心概念。Spring是一个开源的Java平台,它提供了一套全面的编程和配置模型,主要用于简化企业级应用的开发。其中,依赖注入(Dependency ...

    spring AOP拦截方法小示例

    在Spring框架中,AOP(面向切面编程)是一种强大的设计模式,用于处理系统中的横切关注点,如日志记录、事务管理、性能监控等。这个“spring AOP拦截方法小示例”是一个实际应用,展示了如何使用Spring AOP来拦截...

    Flex-Spring拦截器

    2. 在Spring的MVC配置中注册拦截器,通常在`WebMvcConfigurerAdapter`的子类中,通过`addInterceptors`方法添加到拦截器链。 3. 配置AMF通道,使其能够识别并应用拦截器。这通常涉及到对`RemotingConfig`的定制,...

    spring学习事务源码

    2. **PlatformTransactionManager**: 这是Spring事务管理的顶级接口,提供了开始、提交、回滚事务的方法。根据底层数据源,如JDBC、Hibernate、JPA等,会有不同的实现,如DataSourceTransactionManager、...

    spring_如何管理事务的

    #### 一、Spring事务管理概述 Spring框架为开发者提供了一套强大的事务管理机制,它简化了应用程序中的事务控制逻辑,使得开发人员能够更加专注于业务逻辑的编写,而不是繁琐的事务管理代码。Spring支持两种类型的...

    SpringBean 调用 事务 AOP

    在Spring框架中,事务管理和AOP(面向切面编程)是两个核心概念,它们相互结合以提供高效且灵活的应用程序开发。本篇文章将深入探讨如何在Spring中通过Bean...理解Spring事务AOP的工作机制对于提升开发效率至关重要。

    springaop拦截controller日志

    在Spring AOP(面向切面编程)中,我们经常利用它来实现横切关注点,如日志记录、事务管理等。"springaop拦截controller日志"这个主题旨在讲解如何使用Spring AOP来拦截Controller层的方法调用,并在方法执行前后...

    Spring Boot Aspect 切面 AOP 拦截器 Interceptor 监控control请求耗时

    在Spring Boot应用中,面向切面编程(AOP)是一种强大的设计模式,它允许我们以声明式的方式插入代码,比如日志记录、事务管理或权限检查。Aspect是AOP的核心概念,它封装了关注点,使得我们可以将这些关注点与业务...

    SPRING事务机制DEMO

    Spring事务机制是Java开发中非常重要的一个概念,它在企业级应用中扮演着核心角色,确保数据的一致性和完整性。Spring提供了多种事务管理方式,包括编程式事务管理和声明式事务管理。在这篇DEMO中,我们将重点探讨...

    spring五种事务配置demo

    测试spring事务管理 搭建了ssh框架的web工程 本工程用到的数据库表很简单 user(id, name) 可自行创建 本例所有的事务放在service层进行管理,方法中间抛出运行时异常以测试是否回滚 Spring配置文件中关于事务...

    Spring拦截器示例

    配置拦截器时,我们需要在Spring配置文件中声明拦截器,或者在Spring Boot应用中通过`WebMvcConfigurer`接口的实现进行配置。对于`HandlerInterceptor`,我们将其添加到`InterceptorRegistry`;对于`@AspectJ`,则...

Global site tag (gtag.js) - Google Analytics