java jdbc事务

本文介绍了Java中使用JDBC进行事务处理的概念和方法。事务是为了保证数据安全性,遵循ACID原则,包括原子性、一致性、隔离性和持久性。在JDBC中,可以通过设置Connection对象的autoCommit为false来手动控制事务,然后使用COMMIT和ROLLBACK来提交或回滚事务。当事务中的操作出现错误时,可以使用ROLLBACK回滚以保持数据完整性。
摘要由CSDN通过智能技术生成

先来了解一下什么是事务吧。事务是为了解决数据安全操作提出的,实际上就是控制数据的安全访问。事务其实是一种机制,是对数据库执行的工作单元。无论是在手动方式由用户或者自动的通过某种数据库程序的序列单元。它包含了一组数据库操作指令,这些指令要么全部执行,要么全部不执行。通过事务,可以把逻辑相关的一组操作绑在一起,

以便保持数据的完整性。

还有事务必须服从ISO/IEC所制定的ACID原则。ACID就是原子性,一致性,隔离性,持久性的缩写。

原子性:确保工作单元中的所有操作都成功完成,否则事务被终止的故障点,操作回滚到之前的状态。

一致性:确保数据库正确后成功提交事务更改状态。

隔离:事务操作彼此独立和透明。

持久性:可确保提交的事务的结果或任然存在系统故障的情况下的作用。

实际上一个java语言开发的系统,如果要操作数据库,则是通过jdbc来实现的,所以在jdbc中也有对事务的控制的方法。Jdbc事务有一个局限性,就是不能跨越多个数据库。

Java 事务是用Connection对象控制的,jdbc获得一个connection对象时,默认情况下这个connection对象会自动向数据库提交在它上面发送的sql语句,若想关闭可以通过setAutoCommit方法设置为false即可。

 

事务控制

COMMIT:保存更改。

ROLLBACK:回滚更改

private Connection con = null;

private PreparedStatement ps = null;

try {

con.setAutoCommit(false); //将自动提交设置为false

ps.executeUpdate("sql修改语句"); //执行修改操作

ps.executeQuery("sql查询语句"); //执行查询操作

con.commit(); //当两个操作成功后手动提交

} catch (Exception e) {

con.rollback(); //一旦其中一个操作出错都将回滚,使两个操作都不成功 e.printStackTrace();

}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值