Spring框架用注解进行事务控制
程序员文章站
2022-06-01 21:15:22
...
今天纠结了一天呀~~就为了个注解事务控制。
其实很久以前就用过了,今天还是照原来的方法配置,以为半个小时搞定...结果死活不行!
Oh,my god!各种方法,各种测试,都不行。一天就这样快过去了。突然发现,不会是数据库驱动问题吧...
带着绝望的心情,换了个驱动。测试,数据回滚了...数据回滚啦!!!Fuxx,不爆粗不足以抒发此时的畅快心情。
好了,说了一顿略废的话,回到正题。记下如何使用spring注解来对事务进行控制吧。
这是xml中的配置:
然后代码中用个如下的注解,你就把事务轻松掌控在自己手里了!
当然,注解还有几个参数可以设置,这个就不详记了。
对了,如果以上配置不起作用,查看一下驱动。这里也记下这个坑爹的驱动名:com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource
换成这个就可以了:com.mysql.jdbc.Driver
其实很久以前就用过了,今天还是照原来的方法配置,以为半个小时搞定...结果死活不行!
Oh,my god!各种方法,各种测试,都不行。一天就这样快过去了。突然发现,不会是数据库驱动问题吧...
带着绝望的心情,换了个驱动。测试,数据回滚了...数据回滚啦!!!Fuxx,不爆粗不足以抒发此时的畅快心情。
好了,说了一顿略废的话,回到正题。记下如何使用spring注解来对事务进行控制吧。
这是xml中的配置:
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource"/> </bean> <tx:annotation-driven transaction-manager="transactionManager"/>
然后代码中用个如下的注解,你就把事务轻松掌控在自己手里了!
@Transactional(propagation=Propagation.REQUIRED)
当然,注解还有几个参数可以设置,这个就不详记了。
对了,如果以上配置不起作用,查看一下驱动。这里也记下这个坑爹的驱动名:com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource
换成这个就可以了:com.mysql.jdbc.Driver