Spring—声明式事务管理

Spring—声明式事务管理 标签:manage nsa efault alter 执行 im

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

作者: 老毛桃

为您推荐

返回顶部