文档章节

jdbc实现事务会滚

anlen_gzz
 anlen_gzz
发布于 2017/07/20 11:06
字数 148
阅读 17
收藏 0
点赞 0
评论 0
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;

public class Jdbc_RollBack {
	
	public static void main(String[] args) {
		   Connection conn = null;
	       Statement stmt = null;
	       try {
	           // 动态导入数据库的驱动
	           Class.forName("com.mysql.jdbc.Driver");
	 
	           // 获取数据库链接
	           conn = DriverManager.getConnection(
	                  "jdbc:mysql://localhost:3306/demo2", "root", "123456");
	          
	           // 开启事务
	           conn.setAutoCommit( false );
	 
	           stmt = conn.createStatement();
	           stmt.executeUpdate("INSERT INTO t_jdbcTest ( name,password ) VALUES ( 'test','aaa')"); //数据库更新操作1
	           stmt.executeUpdate("update t_jdbcTest set  id=1 where name='test2'"); //数据库更新操作2
	           // 提交事务
	           conn.commit();
	          
	           System.out.println( "事务执行成功" );
	       } catch (Exception e) {
	           e.printStackTrace();
	           try {
	        
	              conn.rollback();
	              System.out.println("事务rollback");
	           } catch ( Exception e2 ) {}
	       } finally {
	           // 关闭Statement
	           try {
	              stmt.close();
	           } catch (Exception e) {}
	           // 关闭Connection
	           try {
	              conn.close();
	           } catch (Exception e) {}
	       }
	    }
		
}

 

© 著作权归作者所有

共有 人打赏支持
anlen_gzz
粉丝 2
博文 55
码字总数 12589
作品 0
广州
程序员
基于可靠消息方案的分布式事务(二):Java中的事务

前言:在上一篇文章 基于可靠消息方案的分布式事务:Lottor介绍 中介绍了常见的分布式事务的解决方案以及笔者基于可靠消息方案实现的分布式事务组件Lottor的原理,并展示了应用的控制台管理。...

aoho ⋅ 06/01 ⋅ 0

sharding-jdbc事务解读

序言 sharding-jdbc在分库分表方面提供了很大的便利性,在使用DB的时候,通常都会涉及到事务这个概念,而在分库分表的环境上再加上事务,就会使事情变得复杂起来。本章试图剖析sharding-jdbc...

xiaomin0322 ⋅ 06/06 ⋅ 0

集成 Proxy 与 DB Mesh,Sharding-JDBC 3 将"Sharding"做到极致

嘉宾:张亮 作者:雨多田光 提起数据库中间件,我们可以很自然地联想到 OneProxy、TDSQL、Sharding-JDBC 与 MyCat 等知名项目。在众多的数据库中间件实现技术中,通常存在两种架构模式,一种...

编辑部的故事 ⋅ 05/23 ⋅ 18

Hibernate通过createSQLQuery( )方法实现增删改查

Hibernate通过createSQLQuery( )方法实现增删改查 Hibernate的三种实现方式之一:createSQLQuery( ) 一、项目结构 二、hibernate核心配置文件: hibernate.cfg.xml [java] view plain copy...

代金券优惠 ⋅ 04/16 ⋅ 0

spring事务和jdbc事务

Spring事务的基本原理 Spring事务的本质其实就是数据库对事务的支持,没有数据库的事务支持,spring是无法提供事务功能的。对于纯JDBC操作数据库,想要用到事务,可以按照以下步骤进行: 获取...

TonyStarkSir ⋅ 04/16 ⋅ 0

ThreadLocal趣谈 —— 杨过和他的四个冤家

一个一个上 一日醒来,杨过发现小龙女离家出走,于是外出寻找,不料碰上了金轮法王、李莫愁、裘千尺、公孙止四个冤家。 “哼,四个打我一个,算什么英雄好汉,有本事的,一个一个上!” 按照...

SexyCode ⋅ 06/12 ⋅ 0

【死磕Sharding-jdbc】—–路由&执行

原文作者:阿飞Javaer 原文链接:https://www.jianshu.com/p/09efada2d086 继续以模块中的为基础,剖析分库分表简单查询SQL实现--,即如何执行简单的查询SQL,接下来的分析以执行SQL语句为例...

飞哥-Javaer ⋅ 05/03 ⋅ 0

Sharding-JDBC 3.0 即将发布,更名 Sharding-Sphere !

8日下午,知名开源数据库中间件 Sharding-JDBC 创始人张亮在朋友圈中发布了一个动态,表示 Sharding-JDBC 3.0 将于近期发布。 从该动态我们可以知道,从 3.0 开始,Sharding-JDBC 将更名为 ...

雨田桑 ⋅ 05/08 ⋅ 16

sharding-jdbc源码分析—准备工作

原文作者:阿飞Javaer 原文链接:https://www.jianshu.com/p/7831817c1da8 接下来对sharding-jdbc源码的分析基于tag为源码,根据sharding-jdbc Features深入学习sharding-jdbc的几个主要特性...

飞哥-Javaer ⋅ 05/03 ⋅ 0

Java面试题全集(上)+JavaSE基础

第一阶段:开发常用 JavaSE基础、Spring、Spring Boot、Spring Cloud、Hibernate、Mybatis、MySQL、Oracle、MariaDB(支持文档数据) 第二阶段:基础提升 JavaSE深入、JVM、数据结构+算法、H...

guod369 ⋅ 2017/12/28 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

开启Swarm集群以及可视化管理

在搭建的两台coreos服务器上开启swarm集群 前置条件: docker均开启2375端口 同一个局域网内 主服务器上安装Portainer容器 安装Portainer容器执行: docker run -d -p 9000:9000 --restart=a...

ykbj ⋅ 21分钟前 ⋅ 0

单例设计模式

1、单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例 2、饿汉式单例类 在这个类被加载时,静态变量instance会被初始化,此时类的私有构造子会被调用 饿汉式是典型...

职业搬砖20年 ⋅ 26分钟前 ⋅ 0

前端基础(四):前端国际规范收集

字数:1142 阅读时间:5分钟 前言 由于前端技术的灵活性和杂乱性,导致网上的许多解决方案不够全面甚至是完全错误,容易起到误导作用。所以,我对搜索到的解决方案往往是存疑态度。那么,如何...

老司机带你撸代码 ⋅ 28分钟前 ⋅ 0

Failed to open/create Network-VirtualBox Host-Only

虚拟机版本 : Oracle Vm VirtualBox 5.2.12 报错时机:开网卡二,重启虚拟机报错 "Failed to open/create the internal network 'HostInterfaceNetworking-VirtualBox Host-Only Ethernet Ada......

p至尊宝 ⋅ 31分钟前 ⋅ 0

三分钟学会如何在函数计算中使用 puppeteer

摘要: 使用 puppeteer 结合函数计算,可以快速的构建弹性的服务完成各种功能,包括:生成网页截图或者 PDF、高级爬虫,可以爬取大量异步渲染内容的网页、模拟键盘输入、表单自动提交、登录网...

阿里云云栖社区 ⋅ 34分钟前 ⋅ 0

springMVC接收表单时 Bean对象有Double Int Char类型的处理

前台ajax提交表单price为double类型 后台controller就介绍不到 400错误 前台 实体类: public class ReleaseMapIconConfig{ private String id; private long maxValue; private long minVal......

废柴 ⋅ 37分钟前 ⋅ 0

ZOOKEEPER安装

工作需要在ubuntu上配置了一个zookeeper集群,有些问题记录下来。 1. zookeeper以来java,所以首先要安装java。但是ubuntu系统有自带的jdk,需要通过命令切换java版本: $ sudo update-alter...

恰东 ⋅ 39分钟前 ⋅ 0

linux 进程地址空间的一步步探究

我们知道,在32位机器上linux操作系统中的进程的地址空间大小是4G,其中0-3G是用户空间,3G-4G是内核空间。其实,这个4G的地址空间是不存在的,也就是我们所说的虚拟内存空间。 那虚拟内存空间...

HelloRookie ⋅ 40分钟前 ⋅ 0

myatis #{}与${}区别及原理

https://blog.csdn.net/wo541075754/article/details/54292751

李道福 ⋅ 43分钟前 ⋅ 0

三分钟学会如何在函数计算中使用 puppeteer

摘要: 使用 puppeteer 结合函数计算,可以快速的构建弹性的服务完成各种功能,包括:生成网页截图或者 PDF、高级爬虫,可以爬取大量异步渲染内容的网页、模拟键盘输入、表单自动提交、登录网...

猫耳m ⋅ 44分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部