第一种  tx aop 空间

引入空间

<beans xmlns="http://www.springframework.org/schema/beans"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns:p="http://www.springframework.org/schema/p"
 xmlns:context="http://www.springframework.org/schema/context"
 xmlns:tx="http://www.springframework.org/schema/tx"
 xmlns:aop="http://www.springframework.org/schema/aop"
 xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
    http://www.springframework.org/schema/context
    http://www.springframework.org/schema/context/spring-context-2.5.xsd
    http://www.springframework.org/schema/tx 
    http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
    http://www.springframework.org/schema/aop 
    http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
    ">

<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="qry*" propagation="REQUIRED" read-only="true"></tx:method>
   <tx:method name="*" propagation="REQUIRED" rollback-for="Exception"></tx:method>
  </tx:attributes>
 </tx:advice>

<!-- 定义AOP配置:切点 -->
 <aop:config>
  <aop:pointcut id="tranaop"
   expression="execution(* com.zte.adc.report.service.*.*(..))" />
  <aop:advisor advice-ref="txadvice" pointcut-ref="tranaop" />
 </aop:config>

第二种 通过xml 标记 拦截器来实现

<bean id="transactionManager"

class="org.springframework.transaction.jta.JtaTransactionManager">

</bean>

<bean id="transactionInterceptor" class="org.springframework.transaction.interceptor.TransactionInterceptor">

<!-- 事务拦截器bean需要依赖注入一个事务管理器 -->

<property name="transactionManager" ref="transactionManager"/>

<property name="transactionAttributes">

<!-- 下面定义事务传播属性-->

<props>

<prop key="insert*">PROPAGATION_REQUIRED</prop>

<prop key="find*">PROPAGATION_REQUIRED,readOnly</prop>

<prop key="*">PROPAGATION_REQUIRED</prop>

</props>

</property>

</bean>

<!-- 定义BeanNameAutoProxyCreator 该类 用于说明那些类 能够被拦截-->

<bean class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">

<!-- 指定对满足哪些bean name的bean自动生成业务代理 -->

<property name="beanNames">

<!-- 下面是所有需要自动创建事务代理的bean-->

<list>

<value>test1</value>

<value>test2</value>

</list>

<!-- 此处可增加其他需要自动创建事务代理的bean-->

</property>

(2)<!-- 指定对满足哪些bean name的bean自动生成业务代理 -->

<property name="beanNames">

<value>*DAO,*.Service</value>

</property>

<!-- 下面定义BeanNameAutoProxyCreator所需的事务拦截器-->

<property name="interceptorNames">

<list>

<value>transactionInterceptor</value>

<!-- 此处可增加其他新的Interceptor -->

</list>

</property>

</bean>

转载于:https://www.cnblogs.com/liaomin416100569/archive/2010/04/13/9331870.html

spring 事物配置几种相关推荐

  1. zbb20180921 spring事物的七种事物传播属性行为及五种隔离级别

    spring事物的七种事物传播属性行为及五种隔离级别 事务,就是一组操作数据库的动作集合.事务是现代数据库理论中的核心概念之一.如果一组处理步骤或者全部发生或者一步也不执行,我们称该组处理步骤为一个事 ...

  2. spring事物配置,声明式事务管理和基于@Transactional注解的使用

    事物管理对于企业应用来说是至关重要的,好使出现异常情况,它也可以保证数据的一致性. spring支持编程式事务管理和声明式事务管理两种方式. 编程式事务管理使用TransactionTemplate或 ...

  3. Spring 事务配置5种方式

    Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource.TransactionManager和代理机制这三部分,无论哪种配置方式,一般变化的只是代理机制这部分. DataSo ...

  4. spring事物配置

    文章目录 xml方式 注解方式 xml方式 <!-- 配置事务管理 --><bean name="transactionManager" class=" ...

  5. spring事物配置备份

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...

  6. Spring中配置DataSource数据源的几种选择

    Spring中配置DataSource数据源的几种选择 在Spring框架中有如下3种获得DataSource对象的方法: 从JNDI获得DataSource. 从第三方的连接池获得DataSourc ...

  7. Spring事务配置的五种方式 说明

    Spring事务配置的五种方式  [转 http://blog.csdn.net/hjm4702192/article/details/17277669] Spring配置文件中关于事务配置总是由三个 ...

  8. Spring事务配置的五种方式和spring里面事务的传播属性和事务隔离级别、不可重复读与幻读的区别

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. spring事务配置的五种方式 前段时间对Spring的事务配置做了比较深入的研究,在此之间对Spr ...

  9. Spring中配置Hibernate事务的四种方式

    2019独角兽企业重金招聘Python工程师标准>>> 为了保证数据的一致性,在编程的时候往往需要引入事务这个概念.事务有4个特性:原子性.一致性.隔离性.持久性. 事务的种类有两种 ...

  10. Spring Bean的三种配置方式

    目录 一.传统的XML配置方式 二.基于java注解的配置 三.基于类的Java Config 正文 Spring Bean有三种配置方式: 传统的XML配置方式 基于注解的配置 基于类的Java C ...

最新文章

  1. 一个CV算法工程师在技术方面的反思!
  2. Hyperledger Fabric区块链工具configtxgen配置configtx.yaml
  3. 二级java题型及分值_2016年全国计算机二级java语言程序设计考试大纲
  4. 谷歌:明年开始对应用内购买抽取 30% 分成;钉钉创始人无招将离任;Java O2OA V5.2.0 发布|极客头条
  5. 图论算法——最短路径算法
  6. HDU--2502 月之数
  7. 视易服务器查看硬盘状态,Linux服务器使用Smartmontools检测硬盘状况 | 厘米天空
  8. linux用dd命令刻录u盘,巧用linux dd命令刻录启动U盘
  9. 企业微信网页授权登陆
  10. 10月10日第壹简报,星期一,农历九月十五
  11. Jsp中9大内建对象
  12. 中国没有真正意义上的海滩比基尼(图)
  13. c语言跳马思路,跳马问题 - 日拱一卒的个人空间 - OSCHINA - 中文开源技术交流社区...
  14. Vitas - star 歌词,拼音版
  15. 图像处理时为什么灰度化 【文末赠书】
  16. 转:一套大而全的系统架构体系与具体落地方案
  17. C#设计模式之代理模式
  18. 2020东南大学考研916计算机网络概况大放送!!!
  19. 浙江计算机学考的时候考是哪些,浙江高校招生职业技能考试大纲--计算机类
  20. HTML5期末大作业:电影网站设计——电影介绍(11页) 大学生电影网页作品 电影网页设计作业模板 学生网页制作源代码下载

热门文章

  1. 巧用MacOS的勿扰模式,解决广告弹窗
  2. 用WinZip Pro创建Zip文件
  3. “梅丽莎”病毒背后的神秘黑客
  4. 11.20日个人工作总结
  5. 小蚂蚁学习C语言(2)——C语言编程预备知识(上)
  6. seci-log 1.06 发布 增加全文搜索
  7. Java对Map排序
  8. c语言自行设计矩形类构造函数
  9. 教你如何用双SATA硬盘组建RAID系统
  10. ps aux、ps -aux、ps -ef之间的区别