JDBC事物的处理
JDBC事物的处理:
概念:事务是指逻辑上的一组操作,组成这组操作的各个单元,要不全部成功,要不全部不成功。
数据库开启事务命令:
start transaction 开启事务
Rollback 回滚事务
Commit 提交事务
事物的使用:
JDBC控制事务语句
Connection.setAutoCommit(false); // 相当于mysql语句的start transaction
Connection.rollback(); // 相当于mysql语句的 rollback
Connection.commit(); // 相当于mysql语句的 commit
-----------------------------------------------------------------------------------
代码如下:
package com.aaa.demo1; import com.aaa.demo.JdbcUtils; import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException; public class DemoTranscation {
public static void main(String[] args) {
Connection conn = null;
PreparedStatement ps = null;
// 1 获取链接
try {
conn = JdbcUtils.getConnectio();
//2 开启事物
conn.setAutoCommit(false);
// 3 获取PreparedStatement
ps = conn.prepareStatement("UPDATE count SET money = money-? WHERE cname =?"); // 4 使用PreparedStatement 两次更新操作
ps.setDouble(1, 500);
ps.setString(2, "樱花落");
ps.executeUpdate();
System.out.println(111 / 0);
ps = conn.prepareStatement("UPDATE count SET money = money+? WHERE cname =?");
ps.setDouble(1, 500);
ps.setString(2, "洛天依");
ps.executeUpdate();
//提交事物 // System.out.println("转账成功");
//conn.commit(); } catch (Exception e) {
//事物回滚
try {
conn.rollback();
} catch (SQLException e1) {
e1.printStackTrace();
}
System.out.println("转账失败");
} finally {
//关资源
JdbcUtils.close( conn,ps); } }
}
JDBC事物的处理的更多相关文章
- 数据库事物 jdbc事物 spring事物 隔离级别:脏幻不可重复读
1.数据库事物: 事物的概念 a给b打100块钱的例子 2.jdbc事物: 通过下面代码实现 private Connection conn = null; private PreparedState ...
- jdbc 事物 commit 和rollback方法
package transaction; import jdbc.utils.*; import java.sql.Connection; import java.sql.PreparedStatem ...
- jdbc 事物
package transaction; import jdbc.utils.*; import java.sql.Connection; import java.sql.PreparedStatem ...
- JDBC——事物管理
案例:银行转账问题,数据库如下 相关API setAutoCommit(boolean autoCommit) 将此连接的自动提交模式设置为给定状态.设置事务是否自动提交如果设置为false,表示手 ...
- JDBC学习1:详解JDBC使用
什么是JDBC JDBC(Java Database Connectivity),即Java数据库连接,是一种用于执行SQL语句的Java API,可以为多种关系数据库提供同一访问,它由一组用Java ...
- 在Hibernate中分别使用JDBC和JTA事务的方法
在Hibernate中使用JDBC事务 Hibernate对JDBC进行了轻量级的封装,它本身在设计时并不具备事务处理功能.Hibernate将底层的JDBCTransaction或JTATransa ...
- 浅谈JDBC(二)
JDBC中的事务 简单来说,事务就是要保证一组DAO方法的操作,要么一起成功要么一起失败. 1.事务控制的位置 在Service中的业务方法内进行事务控制. 2.事务控制的代码 a.注意:JDBC会自 ...
- java_web学习(12)JDBC
数据持久化 持久化(persistence):把数据保存到可掉电式存储设备中以供之后使用.大多数情况下,特别是企业级应用,数据持久化意味着将内存中的数据保存到硬盘上加以”固化”,而持久化的 ...
- Java事物基础总结
1.什么是事物? 事物是逻辑上的的一种操作,这个操作过程中的每一个元素要么全部成功,要么全部失败.例如,银行转账过程视为一个事物,转出过程和转入过程要求全部成功或全部失败,通过提交事物或者回滚事物实现 ...
随机推荐
- Patrick Hughes - 错觉3D雕塑艺术
Pictures Patrick Hughes (artist) From Wikipedia, the free encyclopedia Patrick Hughes. Leaning on a ...
- 利用java反射排查一次线上问题(确定问题及问题定位)
背景 hive 用的 1.1.0版本(其实这个版本bug挺多,包括执行计划串列的等等问题吧,建议大家如果选1.x版本用1.2.2吧),一下提到的代码部分如无特殊说明都是hive-1.1.0版本. 前段 ...
- keepalived nginx 双机热备图文讲解
http://blog.csdn.net/wanglei_storage/article/details/51175418
- <基础> PHP 进阶之 抽象类(abstract)、接口(interface)、Trait(特征)
抽象类 PHP 5 支持抽象类和抽象方法.定义为抽象的类不能被实例化. 抽象方法只能在抽象类中,抽象类中可以包含非抽象方法 被定义为抽象的方法只是声明了其调用方式(参数),不能定义其具体的功能实现 继 ...
- Spring cloud(2)B Eureka 注册微服务到服务中心
1.在provide上添加pom(必须加上web) 如果不加 启动后就会自己关闭 <dependency> <groupId>org.springframework.clo ...
- Django的路由层详情
1. Django的路由解析: 是从上往下进行匹配的 url(r'index', views.index) #这里的index 解析都可以被解析到的, abcindex index indexabc ...
- flash builder的配色方案
写代码的时候看着代码颜色不是特别好,于是研究了一下flash builder的配色方案. flash builder由eclipse开发,采用和eclipse相同的配置方法,这个网站上有很多配色模板: ...
- 获取本机内网、外网ip(C++)<转>
基础知识 电脑在局域网内,通过网关/路由器连接到Internet则ip分为内网ip.外网ip.通过ipconfig得到的为局域网ip. 电脑直接拨号连接等,则本机通过ipconfig得到的就是外网ip ...
- SpringBoot读取application.properties文件内容
application.properties存储数据的方式是key-value. application.properties内容 userManager.userFile=data/user.pro ...
- 工作记录 rfcn网络结构 caffe time测速和实际运行中速度不相等。
现象: 用caffe time测试网络结构,前向传播是 8 ms左右, 实际集成后运行的时候,forward耗时大概4-5ms. 输入大小是一致的. 于是开始查这个问题. 最后定位到,差别在propo ...