事务是什么?在java中如何手工执行事务

2024-11-29 03:41:41
推荐回答(3个)
回答1:

事务 指作为单个逻辑工作单元执行的一系列操作。 事务处理可以确保除非事务性单元内的所有操作都成功完成,否则不会永久更新面向数据的资源。通过将一组相关操作组合为一个要么全部成功要么全部失败的单元,可以简化错误恢复并使应用程序更加可靠。一个逻辑工作单元要成为事务,必须满足所谓的ACID(原子性、一致性、隔离性和持久性)属性;
在java中你要手工执行事务,如果是jdbc连接数据库,那么就设置提交的时候手动提交
conn.setAutoCommit(false);//conn 是connection对象
当结束后
conn.commit();
希望对你有帮助

回答2:

举个例子,银行转账就是一个事物:从A账户减去金额,吧该金额转到B账户中。吧所有操作完成并且数据同步到数据库中,事物才栓完成。但是数据库操作过程中可能发生错误,其中一个操作失败,就会造成A+B账户金额与操作前的有出入,当发生错误后要取消操作(数据库的事物回滚),保证数据的一致性。

手工执行事物:
1、关闭数据库自动提交,
2、数据库操作完成后如果出错:回滚;没有错误:提交
3、记得关闭数据库连接

回答3:

简单的说个例子吧。比如你要修改数据库中的内容,而且有很多,update1 update2 update3 ,如果3条数据都修改成功这是我们预期的目标,如果update2 删除失败了我们让整个事务内操作的内容全部取消掉。

事务开启
操作1
操作2
操作3
关闭事务
如果出现异常 进行 回滚