Web前端之Spring中使用事务管理 优就业

本文介绍了在数据库操作中如何使用事务管理确保数据一致性。通过START TRANSACTION开始一个事务,并在提交前允许对操作进行回滚。Spring框架提供了DataSourceTransactionManager组件来简化事务管理过程。
摘要由CSDN通过智能技术生成

在一个业务的实现过程中,可能需要多条sql完成对数据库的操作,比如账户登录,需要匹配用户名和密码,然后要增加积分,还要记录登录的ip和时间,这可能需要三个sql语句,这三个语句应当是一个整体,任意一个sql执行不成功,都表示这个业务没有执行完成,这就有了事务的概念。

事务是数据库中的概念,就是对数据库的一组操作,由一条或多条sql组成。

Web前端之Spring中使用事务管理 优就业

Web前端:http://www.ujiuye.com/zt/webqianduan/

事务具有同步的特点,一条sql执行失败,其他sql都不会执行,即要么都执行,要么都不执行。

START TRANSACTION开启一个事务,这之后执行的sql语句,在用COMMIT提交事务之前,都没有被"写死"到数据库中,可以用ROLLBACK进行回滚操作。

Spring在jdbc中提供了一个事务管理组件:org.springframework.jdbc.datasource.DataSourceTransactionManager

<!-- 配置事务管理组件 -->
<bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">

使用事务管理的功能,跟创建bean一样,可以采用注解和xml配置两种方式。当然可能还有别的方式,还没学到

<!--采用注解方式:有源码的情况下,将注解加在方法上 -->
<!--开启事务注解标记@Transactional,当调用带@Transactional标记的方法时,将txManager的事务管理功能切入进去-->
<tx:annotation-driven transactional-manager="txManager"/>
<!-- 在需要事务管理的方法上加上@Transactional注解即可 -->
<!--采用xml配置的方式:使用别人写好的功能,没有源码,就可以用xml配置 -->
<tx:advice id="txAdvice" transaction-manager="txManager" > 
<!-- 仍然使用txManager作为事务管理组件 -->

其他:MyBatis应该也提供了事务管理的组件

更多Web前端知识尽在优就业IT培训:http://www.ujiuye.com/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值