采用Spring注解方式, 实现事务
来源:互联网 发布:开淘宝c店 编辑:程序博客网 时间:2024/05/01 15:23
一、前提
spring配置文件分为两个:web容器配置文件和逻辑容器配置文件
逻辑容器配置文件包含了如下配置:
<bean id="txManager"class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><property name="dataSource" ref="cfmDataSource" /></bean> <tx:annotation-driven transaction-manager="txManager"/>
二、使用注解@Transactional实现事务的注意点
1、请确认事务与逻辑注解扫描在同一个容器里,这样才能保证事务的正常开启。(例如:误将注解都扫描在web容器,但是web容器没有配置事务,事务是配置在逻辑容器里,这样导致事务没有开启)。
修改前:
<context:component-scan base-package=“com.hcb.confirmation”/>
修改后:
<context:component-scan base-package="com.hcb.confirmation">
<context:exclude-filter type="annotation" expression="javax.inject.Named"/>
</context:component-scan>
2、是否回滚规则如下:
默认遇到throw new RuntimeException("...");会回滚需要捕获的throw new Exception("...");不会回滚
如果Exception也需要回滚,那么这样声明注解:@Transactional(rollbackFor=Exception.class)
3、如果用mysql数据库,Engine需要设置为InnoDB格式,自动建表的格式为:MyISAM,这中格式的是不支持事务管理的。
show engines;
show variables like '%storage_engine%';
show create table tablename;
4、与声明式的事务不同,注解方式不需要引用aspectj的jar
参考文章:http://www.th7.cn/Program/java/201208/88393.shtml
- 采用Spring注解方式, 实现事务
- Spring 采用注解方式配置事务
- Spring采用注解方式配置事务
- spring采用注解方式实现AOP
- JSF2.0+Spring+Hibernate采用注解方式实现
- spring 事务的注解方式
- Spring注解方式管理事务
- Spring 采用基于XML方式配置事务
- spring配置事务之注解方式
- spring@Transaction注解方式的事务
- Spring的事务操作 注解方式
- spring配置声明式事务--注解方式
- Spring配置声明式事务--注解方式
- Spring 事务基于注解方式的配置
- Spring-AOP和事务实践(注解方式
- Spring 基于注解方式声明式事务
- Spring 使用注解方式进行事务管理 /==/ Spring分布式事务实现
- Spring管理事务实现方式
- Mysql安全基础篇学习笔记
- 黑马程序员——C语言进制和字符串
- mybatis表关联查询
- 《魔鬼搭讪学》读书笔记
- switch语句格式
- 采用Spring注解方式, 实现事务
- 关于break语句与goto语句的区分
- win7安装nodejs失败(node.js setup wizard ended prematurely)
- struts2简介
- 解决控制台输入乱码,用Scanner输入时输入汉字,但是软件读入时出现乱码
- newlisp HTTP Basic Authentication
- hdu 4810 思维题+二进制位规律+异或规律 213南京现场赛题
- poj 3311 Hie with the Pie (TSP问题)
- goto的用法