`
tangzongyun
  • 浏览: 180178 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

声明式事务管理 rollback-for事务回滚策略

    博客分类:
  • Java
阅读更多
rollback-for 属性配置事务的回滚策略


默认的回滚策略:
任何RuntimeException将触发事务回滚,但是任何checked Exception将不触发事务回滚。

rollback-for="java.lang.Exception"

一切继承与java.lang.Exception的异常将会引发事务回滚。

*service中的异常。发生回滚的前提是service层抛出异常,try catch 的异常发生不会引发事务回滚。

只读事务:在执行多条sql语句看到执行前点的数据状态,保证数据一致性。

Oracle默认情况下(没有事务) 保证了SQL语句级别的读一致性,即在一条SQL语句执行期间,它只会看到执行前点的数据状态,而不会看到执行期间数据被其他SQL改变的状态。
所以如果执行多条SQL的时候呢?比如你做一个报表查询,在执行完第一条sql的时候,执行第二条查询SQL,而这个之间有数据被改变了,第二条数据查询就有可能不一致。
而Oracle的只读查询则保证了事务级别的读一致性,即在该事务范围内执行的多条SQL都只会看到执行前点的数据状态,而不会看到事务期间的任何被其他 SQL改变的状态。
没有事务的时候,在执行一条sql语句看到执行前点的数据状态,保证数据一致性

参考文档:http://www.cnblogs.com/rushoooooo/archive/2011/08/28/2155960.html
分享到:
评论

相关推荐

    spring-控制事物回滚

    - `@Transactional`注解:这是Spring提供的声明式事务管理方式,可以标记在类或方法级别。当方法运行时,Spring会自动开启、提交或回滚事务。如果方法抛出未检查异常(继承自`RuntimeException`的异常)或者`Error`...

    声明式事务处理 SSh

    相较于编程式事务管理,声明式事务处理更加简洁、易于维护,它将事务管理与业务逻辑解耦,使开发者可以专注于业务代码的编写。 声明式事务处理的核心在于XML配置或注解方式来定义事务的边界。在Spring框架中,主要...

    Spring声明式事务处理

    Spring框架的声明式事务处理是Java企业级应用中不可或缺的一部分,它为开发者提供了一种方便、高效的方式来管理事务。在Spring中,事务管理分为编程式和声明式两种方式,而声明式事务处理则是通过配置来控制事务的...

    全面分析_Spring_的编程式事务管理及声明式事务管理.

    本篇文章将深入探讨Spring中的两种主要事务管理方式:编程式事务管理和声明式事务管理。 1. 编程式事务管理: 编程式事务管理允许开发者直接在代码中控制事务的开始、提交、回滚等操作。这种方式具有较高的灵活性,...

    Spring使用XML配置声明式事务

    在Spring框架中,声明式事务管理是实现事务处理的一种高效且灵活的方式,它允许开发者通过XML配置或注解来定义事务边界,而无需在业务逻辑代码中显式地调用开始、提交或回滚事务的方法。这篇博文"Spring使用XML配置...

    spring+mybatis的声明式事务

    标签"声明式事务"表明我们将重点讨论的是Spring的声明式事务管理。在Spring中,声明式事务主要通过AOP(面向切面编程)实现,它允许我们在不修改业务代码的情况下,通过XML配置或Java配置,以及注解来控制事务的...

    spring 自定义事务管理器,编程式事务,声明式事务@Transactional使用

    本教程将深入探讨如何在Spring中实现自定义事务管理器、编程式事务处理以及声明式事务`@Transactional`的使用。 首先,让我们了解事务管理的基本概念。事务是一组数据库操作,这些操作要么全部执行,要么全部回滚,...

    09-5基于注解方式的声明式事务.rar

    本资料包“09-5基于注解方式的声明式事务.rar”聚焦于Spring框架中如何使用注解来实现声明式事务管理,这是一种简化事务处理、提高代码可读性和可维护性的方法。在这里,我们将深入探讨相关知识点。 1. **什么是...

    spring_声明式事务_xml事务的书写.zip

    本教程将深入探讨Spring声明式事务以及如何通过XML配置来管理事务。声明式事务是Spring框架的一大亮点,它允许开发者无需在业务代码中显式处理事务,而是通过配置来控制事务的边界。 首先,我们要理解什么是事务。...

    Spring.NET学习笔记16——事务管理Demo源码

    5. **回滚规则**:在声明式事务管理中,可以通过`<tx:method>`的`no-rollback-for`和`rollback-for`属性定义哪些异常应该触发事务回滚,哪些异常不应触发回滚。 通过Spring.NET的事务管理,我们可以编写出更健壮、...

    Spring 事务 (二) Spring 声明式事务 配置

    本文主要探讨Spring声明式事务管理的配置,这是Spring提供的一种简便的事务管理方式,允许开发者在不编写任何事务管理代码的情况下实现事务控制。这种方式极大地提高了代码的可维护性和可读性。 首先,我们要理解...

    跟我学Spring3(9.4)Spring的事务之声明式事

    在实际开发中,声明式事务管理具有很多优势,例如代码简洁、事务管理与业务代码分离,使得事务策略易于调整和测试。但同时,由于事务的控制权交给了Spring,对于某些特定的事务控制需求,声明式事务可能不够灵活。 ...

    深入理解Spring声明式事务:源码分析与应用实践

    Spring声明式事务是Java开发中不可或缺的一部分,它利用Spring的AOP(面向切面编程)和代理机制,为开发者提供了一种简洁的方式来管理事务。在本文中,我们将深入探讨Spring声明式事务的工作原理,源码分析,以及...

    spring事务管理.rar

    本篇文章将深入探讨Spring的事务管理,特别是声明式事务管理。 ### 1. 事务管理概述 事务是一组数据库操作,这些操作被视为一个单元,要么全部成功,要么全部失败。在Java世界中,事务管理通常遵循ACID(原子性、...

    Spring中的事务管理

    Spring提供了两种主要的事务管理方式:编程式事务管理和声明式事务管理。本篇文章将重点探讨基于注解和XML配置的声明式事务管理。 ### 声明式事务管理 声明式事务管理是Spring中非常受欢迎的特性,因为它允许...

    Spring事务配置的五种方式

    声明式事务管理是Spring中最常用的方式,它将事务管理与业务代码解耦,通过AOP(面向切面编程)实现。有以下两种主要形式: - **基于XML的声明式事务管理** 在Spring的配置文件中,通过`<tx:advice>`定义事务...

    spring03-2

    Spring提供了两种主要的事务管理方式:编程式事务管理和声明式事务管理。 1. **编程式事务管理**:这是通过调用PlatformTransactionManager接口提供的方法来手动管理事务。虽然这种方式提供了最大的灵活性,但正如...

    spring-tx事务管理实例

    总的来说,Spring事务管理通过其强大的声明式事务处理能力和对各种事务策略的支持,使得开发者能够轻松地在应用程序中实现高效、一致的事务处理。通过理解并合理运用上述知识点,开发者可以构建出稳定、健壮的分布式...

    SpringMVC事务管理

    3. 基于AOP的XML配置事务管理:这种方式与上述声明式事务管理类似,只是更具体地利用了Spring的面向切面编程(AOP)。通过定义切入点表达式匹配需要进行事务管理的方法,并将其与事务处理策略关联。 在SpringMVC...

    Spring2.0 事务处理

    在Spring框架中,事务管理分为编程式事务管理和声明式事务管理两种方式。 1. **编程式事务管理**:这种管理方式要求开发者手动编写代码来开启、提交、回滚事务。虽然具有更高的灵活性,但可能导致代码的复杂性增加...

Global site tag (gtag.js) - Google Analytics