9.Spring整合Hibernate_2_声明式的事务管理(Xml的方式)
使用xml的方式进行声明式的事务管理
推荐使用xml的方式,因为可以同时为多个方法进行声明
<!-- 开启Spring中的事务管理(声明式的事务管理) xml-->
<!-- 不管是通过 xml 还是注解的方式 来进行声明式的事务管理,都需要 加载TransactionManager或 DataSouce
因为 事务是与是与数据库相关的,需要数据库一些配置信息
-->
<bean id="txManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
<!-- 想要进行事务管理,都需要运用到 AOP ,往方法前后加入开启事务 和 关闭事务的 逻辑,所以用xml 进行声明式的事务管理,也需要用到AOP -->
<aop:config>
<aop:pointcut expression="execution(public * com.bjsxt.service..*.*(..))" id="servicePoints"/>
<aop:advisor pointcut-ref="servicePoints" advice-ref="myAdvice"/>
</aop:config>
<!-- 具体的advice(逻辑) 由 自之前定义的TransactionManager 来指定-->
<tx:advice id="myAdvice" transaction-manager="txManager">
<tx:attributes>
<!-- 这里来 指定 具体在哪个 方法添加事务,以及事务的一些属性 -->
<!-- 所以推荐使用 xml 的方式,可以同时配置好多方法-->
<tx:method name="add" read-only="false" propagation="REQUIRED"/>
</tx:attributes>
</tx:advice>
9.Spring整合Hibernate_2_声明式的事务管理(Xml的方式)的更多相关文章
- 8.Spring整合Hibernate_2_声明式的事务管理(Annotation的方式)
声明式的事务管理(AOP的主要用途之一) (Annotation的方式) 1.加入annotation.xsd 2.加入txManager bean 3.<tx:annotation-drive ...
- Spring整合Hibernate 二 - 声明式的事务管理
Spring大战Hibernate之声明式的事务管理 Spring配置文件: 添加事务管理类的bean: <bean id="txManager" class="o ...
- spring声明式的事务管理
spring支持声明式事务管理和编程式事务管理两种方式. 编程式事务使用TransactionTemplate来定义,可在代码级别对事务进行定义. 声明式事务基于aop来实现,缺点是其最细粒度的事务声 ...
- Spring整合Hibernate:2、使用Annotation方式进行声明式的事务管理
1.加入DataSourceTransactionManager的命名空间 修改applicationContext.xml文件,增加如下内容: 1 2 3 4 5 6 7 8 9 10 11 12 ...
- Spring整合JMS(四)——事务管理
原文链接:http://haohaoxuexi.iteye.com/blog/1983532 Spring提供了一个JmsTransactionManager用于对JMS ConnectionFact ...
- Spring整合JMS(四)——事务管理(转)
*注:别人那复制来的 Spring提供了一个JmsTransactionManager用于对JMS ConnectionFactory做事务管理.这将允许JMS应用利用Spring的事务管理特性.Jm ...
- mybatis、Spring整合(eclipse)以及事务管理
1.项目目录 2.jar包 dbcp:连接池 pool:连接池 logging:日志 log4j:日志 mybatis-spring:用于SqlSession等相关操作 spring相关包 mybat ...
- Spring MVC 中使用AOP 进行事务管理--XML配置实现
1.今天写一篇使用AOP进行事务管理的示例,关于事务首先需要了解以下几点 (1)事务的特性 原子性(Atomicity):事务是一个原子操作,由一系列动作组成.事务的原子性确保动作要么全部完成,要么完 ...
- Spring整合hibernate:3、使用XML进行声明式的事务管理
配置applicationContext.xml文件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 2 ...
随机推荐
- C# Socket TcpClient 无法从传输连接中读取数据: 远程主机强迫关闭了一个现有的连接。。
开始的代码: byte[] data = Encoding.UTF8.GetBytes(sInfo); tcpns.Write(data, 0,1024); 修改 ...
- delphi7 treeview + 数据库 实现动态节点维护
首先说下树节点对应的表的基本结构,必需要有的字段(节点编号,父节点编号,节点名称),其他字段根据你开发的需要添加从添加节点开始,一开始就取出表中最大节点编号,每次添加节点的时候,该节点编号增加1;添加 ...
- VMware虚拟机下CentOS 6.5配置网络
使用NAT模式 虚拟机网络连接使用NAT模式,物理机网络连接使用Vmnet8. 虚拟机设置里面——网络适配器,网络连接选择自定义:Vmnet8 (NAT模式) 虚拟机菜单栏—编辑—虚拟网络编辑器,选择 ...
- 解决Java中的HttpServletResponse中文乱码问题
response.setHeader("Content-type", "textml;charset=UTF-8"); response.setCharacte ...
- FTP与SFTP的区别
简介 wikipedia - FTP --- FTP File Transfer wikipedia - SFTP --- SSH File Transfer 对比 缩写 名称 协议与端口 安全策略 ...
- swift 第八课 CollectView的 添加 footerView 、headerView
collectView 也是 iOS 很常用的瀑布流展示控件了,虽然使用过很多次,一直没有系统的总结过,尤其是在添加header 和footer view 的时候,很常见,写起来总觉得不是很流畅,这里 ...
- sonar汉化
- windows远程重启
用管理员权限打开win+r,输入cmd后: net use \ip地址 "管理员密码" /user:administrator shutdown /r /t 0 /m ip地址 即 ...
- 笔记-3:mysql数据定义
1.定义数据库 1.1 创建数据库:创建数据库是在系统磁盘上划分一块区域用于数据的存储和管理. # 基本语法: create {database | schema} [if not exists] d ...
- C++11 bind和function用法
function是一个template,定义于头文件functional中.通过function<int(int, int)> 声明一个function类型,它是“接受两个int参数.返回 ...