`
frank1998819
  • 浏览: 758456 次
  • 性别: Icon_minigender_1
  • 来自: 南京
文章分类
社区版块
存档分类

spring @Transaction 事务控制

阅读更多
1. 第一种用法
--spring.xml 配置文件中
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>



<tx:annotation-driven transaction-manager="txManager"/>
<bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>

--java service 代码中
@Service("userService")
@Transactional(readOnly = true)
public class UserServiceImpl implements IUserService {

@Transactional(readOnly = false, propagation = Propagation.REQUIRES_NEW)
public void insertUserAndRole(User user, Role role) {
。。。。



2.第二种用法

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

<tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="get*" read-only="true"/>
<tx:method name="find*" read-only="true"/>
<tx:method name="*"/>
</tx:attributes>
</tx:advice>
<aop:config>
<aop:pointcut id="allServiceOperation" expression="execution(* com.frank.test.service.I*.*(..))"/>
<aop:advisor advice-ref="txAdvice" pointcut-ref="allServiceOperation"/>
</aop:config>



注意:

匹配格式: com.frank.test.service.I*(接口名).*(..)
分享到:
评论

相关推荐

    Spring在Transaction事务传播行为种类

    ### Spring中的Transaction事务传播行为种类详解 #### 一、引言 在开发基于Spring框架的应用程序时,事务管理是确保数据一致性的重要手段之一。Spring框架提供了丰富的事务管理功能,其中包括了事务传播行为...

    spring-transaction.jar.zip

    "spring-transaction.jar"正是提供了Spring事务管理的类库,它包含了一系列用于处理事务的接口、类和配置元素,使得开发者能够方便地实现事务控制。 一、Spring 事务管理概述 Spring事务管理分为编程式事务管理和...

    springtransaction 事务管理

    在实际项目中,`springtransaction`工程可能是包含了一个完整的示例,用于演示如何在MyEclipse环境中配置和使用Spring的事务管理功能。开发者可以通过导入此工程,学习和实践Spring事务管理的配置与使用,从而更好地...

    Spring 常用 Transaction Annotation

    本篇主要聚焦于"Spring 常用 Transaction Annotation",即声明式事务管理,这是一种更简洁、易于维护的事务控制方式。 首先,Spring的声明式事务管理基于AOP(面向切面编程),它允许我们在不修改业务代码的情况下...

    Spring Boot数据库事务控制.zip

    Spring框架提供了X/Open XA协议的支持,以及基于Saga模式的分布式事务解决方案,如TCC(Try-Confirm-Cancel)和补偿事务(Compensating Transaction)。 综上所述,Spring Boot的数据库事务控制是通过Spring框架的...

    springTransaction.rar

    这个名为"springTransaction.rar"的压缩包文件包含了一个关于Spring事务管理的小型示例,旨在演示如何使用Spring的事务传播机制来处理数据库操作,特别是转账功能的实现。 首先,让我们了解一下什么是事务。在...

    spring事务与数据库操作

    ### Spring事务与数据库操作 ...综上所述,Spring框架不仅提供了强大的事务管理功能,而且还支持灵活的AOP机制,使得开发者能够在保持业务逻辑清晰的同时,轻松实现诸如事务控制、权限验证等跨切关注点。

    实验 spring 声明事务

    Spring 提供了声明式事务管理,允许开发者在不编写事务管理代码的情况下实现事务控制,极大地简化了事务处理。 实验环境主要包括 Eclipse 或 MyEclipse 开发工具,以及 Spring 4.0 及以上版本,JDK 1.7 及以上版本...

    spring.net oracle 事务控制

    在本项目中,我们将讨论如何在Spring.NET中结合Oracle数据库实现事务控制,以及利用自定义异常处理来确保数据的一致性和完整性。 首先,让我们了解什么是事务。在数据库操作中,事务是一系列操作的集合,这些操作...

    Spring @Transactional工作原理详解

    它使得开发者无需显式地在代码中控制事务的开始、提交和回滚,从而提高了代码的可读性和可维护性。下面我们将深入探讨`@Transactional`的工作原理,以及其与JPA、持久化上下文(Persistence Context)和数据库事务的...

    Spring的事务管理小案例

    案例中的"springStudy04_transaction"可能包含了一个使用Spring进行事务管理的简单应用程序,其中可能包括了数据库连接配置、数据访问对象(DAO)的实现以及事务控制的代码。你可以通过阅读源代码来了解如何在实际...

    Spring事务管理的jar包

    Spring提供了全面的事务管理解决方案,使得开发者可以方便地控制事务的边界,保证数据的一致性和完整性。本篇将深入探讨Spring事务管理的核心概念、工作原理以及如何使用`spring-tx-3.2.0.RELEASE.jar`这个jar包。 ...

    spring-tx事务管理实例

    在分布式事务场景下,Spring提供了JtaTransactionManager,支持JTA(Java Transaction API)进行全局事务管理,可以跨越多个数据库或资源进行事务控制。此外,Spring还支持Atomikos、Bitronix等第三方JTA实现。 在...

    Spring中的@Transactional事物回滚实例源码

    3. **编程式事务管理**:虽然不常用,但可以通过TransactionTemplate或者PlatformTransactionManager接口直接编程控制事务。 在`first_maven_project`这个项目中,我们可能会看到如下配置: ```xml ...

    springboot-transaction事务

    本教程将深入探讨Spring Boot如何与JPA(Java Persistence API)结合,实现对MySQL数据库的事务控制。 1. **Spring Boot事务管理基础** - Spring Boot默认启用`@EnableTransactionManagement`注解,通过声明式事务...

    spring声明式事务处理demo

    Spring框架的声明式事务处理是其企业级应用中的核心特性之一,它允许开发者通过配置来管理事务,而无需在代码中显式地控制事务的开始、提交和回滚。这种方式极大地提高了代码的可读性和可维护性。在这个"spring声明...

    Spring自定义切面事务问题

    在开发基于Spring框架的应用程序时,我们经常需要利用AOP(面向切面编程)来实现横切关注点(如日志记录、安全控制、事务管理等)的模块化处理。其中,事务管理是保证数据一致性的重要手段之一。然而,在实际开发...

    spring声明式事务管理配置方式

    在Spring框架中,声明式事务管理是实现事务处理的一种高效且灵活的方式,它允许开发者通过在服务层方法上添加特定的注解来控制事务的边界,而无需编写大量的事务管理代码。这种方式使得业务逻辑和事务控制得以分离,...

    spring-transaction-demo.rar_DEMO_springboot_wash1vw

    可以通过`spring.datasource`配置数据源,`spring.jpa.hibernate.ddl-auto`设置数据库自动建表策略,以及`spring.transaction.rollback-on-commit-failure`控制事务回滚行为。 2. **实体类(Entity)**:这些是业务...

    spring学习事务源码

    编程式事务管理通过调用`PlatformTransactionManager`接口提供的方法进行显式控制,如`beginTransaction()`, `commit()`, 和`rollback()`。声明式事务管理则依赖于AOP(面向切面编程)来自动处理事务的开始、提交或...

Global site tag (gtag.js) - Google Analytics