首页 > 其他分享 >Spring声明式事务(Spring学习笔记十五)

Spring声明式事务(Spring学习笔记十五)

时间:2024-04-06 10:29:05浏览次数:23  
标签:xml 事务 Spring dao 笔记 十五 aop 声明

        不推荐使用编程式事务 

在Spring-dao.xml中配置声明式事务

   <!--配置声明式事务    -->
    <!--获得transactionManager然后把他丢给他的构造器   constructor-arg -->
    <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <constructor-arg ref="dataSource"/>
    </bean>

 结合aop实现事务的织入 分两步

        第一步:
 <!--1、配置事务通知
     事务式tx:开头   需要先导入事务的约束文件    xmlns:tx="http://www.springframework.org/schema/tx"
        http://www.springframework.org/schema/tx
		https://www.springframework.org/schema/tx/spring-tx.xsd
        和导入aop的约束一样的就是把sop改成tx
     -->
    <!--id=接你想给这个事务通知取什么名字    transaction-manager=是spring提供的唯一的事务管理器,这一句语句是固定的 -->
    <tx:advice id="txAdvice" transaction-manager="transactionManager">
    <!--给那些方法配置事务 就是name=后面接方法名  也口语直接接 * 给所有的方法配置事务-->
    <!--配置事务的传播特性    增删改需要配置 propagation= 默认的为REQUIRED  我们一般也设置为这个   查询的话我们用可以改成read-only="true"
     只读的意思 -->
        <tx:attributes>
            <tx:method name="add" propagation="REQUIRED"/>
            <tx:method name="delete" propagation="REQUIRED"/>
            <tx:method name="update" propagation="REQUIRED"/>
            <tx:method name="query" read-only="true"/>
        <!--一般情况我们可以简单的写成下面这样    让所有的方法都支出事务        -->
            <tx:method name="*" propagation="REQUIRED"/>
        </tx:attributes>
    </tx:advice>
         第二步:
<!--配置事务通知完成后开始第二步 配置aop切入    -->
    <aop:config >
    <!--设置切入点   -->
        <aop:pointcut id="txPoint" expression="execution(* com.li.dao.*.*(..))"/>
    <!--给表达式下面的所有包织入事务将txAdvice切入到txPoint-->
        <aop:advisor advice-ref="txAdvice" pointcut-ref="txPoint"/>
    </aop:config>

标签:xml,事务,Spring,dao,笔记,十五,aop,声明
From: https://blog.csdn.net/weixin_59096327/article/details/137395724

相关文章

  • 虚树学习笔记
    1.简介虚树,顾名思义1,就是不真实的树,常用于动态规划,所以可以说,虚树就是为了解决一类动态规划问题而诞生的当一次询问中仅涉及一颗树中的少量节点时,在整棵树上dp时间复杂度显然难以接受所以可以建立一颗只包含关键节点的树,将非关键的链简化或省略,在新树上进行dp一颗虚树包含所......
  • SSM(Spring+SpringMVC+MyBatis)常用注解大全
    提示使用浏览器查找系统也快速查找,可避免漏看和疲劳Win:Ctrl+FMac:Command+F@Bean功能:用于在配置类中声明一个bean。用法:@ConfigurationpublicclassAppConfig{@BeanpublicMyServicemyService(){returnnewMyServiceImpl();}}@Com......
  • 《C++程序设计》阅读笔记【4-指针(2)】
    ......
  • zynq Lwip学习笔记-ip4_input函数
    这里写目录标题前言一、概述二、函数体三、调用关系前言最近在学习zynq中的lwip协议族,找不到很好的记笔记的地方,所以就用csdn记录一下自己的学习过程。现在对lwip不熟悉,只是把官方的lwipechoserver例程跑了一下,能跑通就一点点的照着学了,笔记都是根据自己的理解写的......
  • zynq Lwip学习笔记-low_level_init函数
    这里写目录标题前言一、概述二、函数体三、调用关系前言最近在学习zynq中的lwip协议族,找不到很好的记笔记的地方,所以就用csdn记录一下自己的学习过程。现在对lwip不熟悉,只是把官方的lwipechoserver例程跑了一下,能跑通就一点点的照着学了,笔记都是根据自己的理解写的......
  • zynq Lwip学习笔记-setup_isr 函数
    这里写目录标题前言一、概述二、函数体三、调用关系前言最近在学习zynq中的lwip协议族,找不到很好的记笔记的地方,所以就用csdn记录一下自己的学习过程。现在对lwip不熟悉,只是把官方的lwipechoserver例程跑了一下,能跑通就一点点的照着学了,笔记都是根据自己的理解写的......
  • 基于Springboot的美发管理系统(有报告)。Javaee项目,springboot项目。
    演示视频:基于Springboot的美发管理系统(有报告)。Javaee项目,springboot项目。项目介绍:采用M(model)V(view)C(controller)三层体系结构,通过Spring+SpringBoot+Mybatis+Vue+Maven+Layui+Elementui来实现。MySQL数据库作为系统数据储存平台,实现了基于B/S结构的Web系统。界......
  • 基于Spring Boot的网上书城系统(带文档)
     主要功能本次设计任务是要设计一个网上书城管理系统,通过这个系统能够满足网上书城的管理及用户的图书信息管理及购物功能。系统的主要功能包括:首页、个人中心、用户管理、图书类型管理、图书分类管理、图书信息管理、我的收藏管理、系统管理、订单管理等功能。管理员可以根......
  • Springboot项目启动异常排查
    一、问题由来启动时报错信息如下:PropertyDetectorcustomBeannotfoundwithname'encryptablePropertyDetector'本地测试时,发现同样的问题。  二、问题分析把该问题对应的英文放在白发翻译里面,翻译结果如下,未找到名为“encryptablePropertyDetector”的属性检测......
  • 算法学习笔记——暴力求解之枚举
    算法学习笔记——暴力求解之枚举枚举枚举是指对每个可能的解进行逐一判断,直到找到符合题目要求的答案。枚举类的题目本身并不复杂,但在采取枚举策略之前,一定要好好的分析题目的枚举量,枚举量过大的时候,需要选择其他的解决方法。即使问题适合枚举,也要进行分析,以便通过减少部分无效......