声明式事务:在配置文件中将事务配置好,通过bean的方式,调用Spring的事务,在程序中不需要做代码性的事务管理,例如commit,backroll等。
编程式事务:需要在代码中加入处理事务的逻辑,可能需要在代码中显示调用beginTransaction(),commit(),rollback()等事务相关的方法,例如在执行a方法时候需要事务处理,需要在a方法开始时候开启事务,处理完后。在方法结束时候,关闭事务。
事务都是为了保证数据的一致和完整,保证整个操作的原子性(即不可分割性,事务要么全部被执行,要么就全部不被执行。如果事务的所有子事务全部提交成功,则所有的数据库操作被提交,数据库状态发生转换;如果有子事务失败,则其他子事务的数据库操作被回滚,即数据库回到事务执行前的状态,不会发生状态转换)。不论是spring事务还是×××事务,都一样。
时间: 2024-10-04 00:14:28