把一系列的动作当做一个独立的工作单元,这些动作要么全部完成,要么全部不起作用。
事务是原子性操作,由一系列动作组成,事务的原子性确保动作要么全部完成,要么完全不起作用
一旦所有事务动作完成,事务就要被提交。数据和资源处于一种满足业务规则的一致性状态中
可能多个事务会同时处理相同的数据,因此每个事务都应该与其他事务隔离开来,防止数据损坏
事务一旦完成,无论系统发生什么错误,结果都不会受到影响。通常情况下,事务的结果被写到持久化存储器中
需要在代码中显式调用beginTransaction()、commit()、rollback()等事务管理相关的方法
在方法的外部添加注解或者直接在配置文件中定义,将事务管理代码从业务方法中分离出来,以声明的方式来实现事务管理。spring的AOP恰好可以完成此功能:事务管理代码的固定模式作为一种横切关注点,通过AOP方法模块化,进而实现声明式事务。