Spring入门知识 ———— Spring事务介绍

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_38111957/article/details/83956549

一、引言

随着时间一分一秒的过去,从IOC、AOP、到现在的事务,小编大概花了两周的时间。在总结回顾之前的知识点,也有不少的收获,技术就是这样,只能靠一点一点的积累,通过不断的锻炼,来提高自己。

我们这一行,也需要时刻保持着学习,真是活到老学到老呀~~~~

二、什么是事务

官方一点的解释:事务管理是企业级应用程序开发中,不可少的技术,用来确保数据库的完整性和一致性。事务就是一系列的动作,它们被当作一个单独的工作单元,这些动作要么全部完成,要么全部不起作用。

小编的解释:事务,就是很多件事情,被管理起来了。就是一条线上的蚂蚱,只有当每个步骤的正常执行,则整个事务提交。如果有其中某一个步骤,导致了异常,则整个事务回滚, 就是类似于一颗老鼠屎坏了一锅粥。

三、事务的使用场景

场景一:这个例子是每一个老师在教学的时候基本上都会说到的,就是银行转账。小王给李四转账1000元,执行这个操作的时候,小王的账户需要减去1000元,并且李四的账户上需要相对应的加上1000。这个时候就需要一个事物来管理,怎么说? 在小王的账户减去了1000,然后再给李四的账户操作的时候,突然程序出问题了。如果不用事务的情况下,那就是小王减了1000,而李四并没有收到1000。 那么问题就来了,所有说事务管理在程序开发中是必不可少的。

场景二:再说说小编在工作当作所使用到的事务场景吧,小编有一个接口,需要保存门诊挂号信息、门诊诊断信息、门诊结算信息等多个操作。当然这些操作都是分别调用不同的保存的方法,这个时候就需要加上一个事物。如果当有其中某一个方法出现了错误,则整个数据事务回滚,都不需要保存。

四、事务的四个关键属性

以下几个属性,大概了解一下,先有个印象。

- 原子性:事务是一个原子操作,由一系列动作组成,事务的原子性确保动作要么全部完成要么全部不起作用。

- 一致性:一旦所有事物动作全部完成,事务就被提交,数据和资源就处于一种满足业务规则的一致性状态中。

- 隔离性:可能有许多事务会同时处理相同的数据,因此每个事务都应该与其他事务隔离开来,防止数据损坏。

- 持久性:一旦事务完成,无论发生什么系统错误,他的结果都不应该受到影响,通常情况下,事务的接口都被写到持久化存储器中,比如数据库。

 

猜你喜欢

转载自blog.csdn.net/weixin_38111957/article/details/83956549
今日推荐