Spring—声明式事务管理
标签:managensaefaultalter执行imgtor管理器ota
1. 声明式事务管理(3步)
(1)在xml配置文件中声明事务管理器
<bean id=\”transactionManager\” class=\”org.springframework.jdbc.datasource.DataSourceTransactionManager\”> <property name=\”dataSource\” ref=\”dataSource\”></property> </bean>
注:ref=\”dataSource\”中的dataSource是在当前xml文件中配置的数据源
(2)在xml配置文件中启用事务注解
<tx:annotation-driven transaction-manager=\”transactionManager\”/>
注:如果声明的事务管理器的id=\”transactionManager\” ,则:transaction-manager属性可以省略
(3)在相关方法上添加注解
@Transactional
2. 问题
代码配置都正确,但是事务不能执行成功
原因:MySQL数据库默认的引擎是MyIASM,MyIASM不支持事务
查看MySQL的数据库引擎
mysql> show engines;
解决:更改MySQL数据库引擎为InnoDB(3种方法)
(1)修改my.ini配置文件
在配置文件中添加default-storage-engine=InnoDB
(2)在表建成之后
ALTER TABLE table_name type = INNODB
(3)在创建表的时候
CREATE TABLE table_name( id INT PRIMARY KEY, NAME VARCHAR(225) )type = INNODB
Spring—声明式事务管理
标签:managensaefaultalter执行imgtor管理器ota
原文地址:http://www.cnblogs.com/duanjiapingjy/p/7663580.html