`
Yinny
  • 浏览: 295740 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
社区版块
存档分类
最新评论

用java处理事务

 
阅读更多
[size=medium]数据库的事务平时很少用到,只有评价线的一个修改隐私的功能用到了事务处理。今天写了个java关于mysql的事务处理类,实现了事务的一些功能。
package com.tina.test;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;



/**
 * @author tina.wyn
 * 
 */
public class TestCommit {
	public static void main(String[] args) {
		Connection conn = null;
		try {
			Class.forName("com.mysql.jdbc.Driver").newInstance();
			String url = "jdbc:mysql://localhost/mysql";
			conn = DriverManager.getConnection(url, "root", "");
			boolean autoCommit = conn.getAutoCommit();
			conn.setAutoCommit(false);
			Statement stmt=conn.createStatement();
			stmt.executeUpdate("insert into tina_test values(1,'tina',25,'female')");
			stmt.executeUpdate("insert into tina_test values(2,'mark',28,'male')");
			ResultSet rSet = stmt.executeQuery("select * from tina_test");
			while (rSet.next()) {
				System.out.println("\tid:" + rSet.getInt(1));
				System.out.println("\tname:" + rSet.getString(2));
				System.out.println("\tage:"+rSet.getInt(3));
				System.out.println("\tsex:"+rSet.getString(4));
				
				//提交事务
				conn.commit();
				//恢复原来的提交模式
				conn.setAutoCommit(autoCommit);
				stmt.close();
			}
		} catch (Exception e) {
			System.out.println("操作失败,任务撤销!" +e);
			try {
				//回滚,取消上述操作
				conn.rollback();
			} catch (Exception e1) {
				e1.printStackTrace();
			}
			finally{
					try {
						if (conn!=null) {
						conn.close();
					} 
				}catch (SQLException e1) {
						e1.printStackTrace();
					}
					
				}
			}
	}
	}

运行之后输出结果:
        id:1
name:tina
age:25
sex:female


mysql数据库里tina_test表为:




[/size]
  • 大小: 6.8 KB
分享到:
评论

相关推荐

    java事务处理详解

    Spring提供了三种方式来处理事务:编程式事务、声明式事务和注解式事务。 编程式事务是指在Java代码中编写事务处理逻辑。这种方式需要开发人员手动控制事务的开始、提交和回滚。 声明式事务是指使用Spring的配置...

    java分布式事务demo

    在实际的"java分布式事务demo"中,可能会包含以上各种技术的实例代码,用于展示如何在Java项目中配置和使用分布式事务,以及如何处理可能出现的问题。通过学习和理解这些示例,开发者可以更好地掌握Java分布式事务的...

    java代码-使用java解决数据库事务处理的源代码

    java代码-使用java解决数据库事务处理的源代码 ——学习参考资料:仅用于个人学习使用!

    Java事务处理详细介绍

    ### Java事务处理详细介绍 #### 一、什么是Java事务 在软件开发领域,特别是涉及数据库操作的应用中,**事务处理**是非常关键的一个概念。通常人们认为事务处理与数据库操作紧密相关,其实事务的概念远不止于此。...

    java事务处理总结

    ### Java事务处理总结 在Java开发中,事务处理是一项非常重要的技术,它能够确保数据的一致性和完整性。本文将从多个角度对Java中的事务处理进行深入解析,帮助开发者更好地理解和运用这一技术。 #### 一、事务的...

    Java事务处理总结

    ### Java事务处理总结 #### 一、什么是Java事务 事务是指一组操作的集合,这些操作要么全部成功,要么全部失败,以确保数据的一致性和完整性。在Java开发中,事务处理主要关注的是如何管理和控制对数据库的操作,...

    Java中的事务处理

    Spring会自动处理事务的开始、提交、回滚等操作。 4. **事务隔离级别** - **读未提交(Read Uncommitted)**:最低级别,允许脏读、不可重复读和幻读。 - **读已提交(Read Committed)**:防止脏读,但可能出现...

    java Oracle事务处理

    java 代码写的关于Oracle的 事务处理

    事务处理java案例代码

    在Java中,我们通常使用JDBC(Java Database Connectivity)来处理数据库事务。以下是一些关键步骤: 1. 连接数据库:通过DriverManager.getConnection()方法建立数据库连接。 2. 创建Statement或...

    java事务管理和事务分类

    而在容器事务中,事务的控制权交给了容器,开发者只需在业务逻辑代码中编写无事务感知的代码,容器会在适当的时候处理事务的生命周期。 在实际应用中,选择合适的事务类型取决于应用的需求,例如,简单的单数据库...

    Java(JDBC)事务处理

    Java(JDBC)事务处理

    JAVA设计模式之事务处理

    "JAVA设计模式之事务处理"主要关注如何在业务逻辑中有效地管理和控制事务。 事务处理在企业级应用中至关重要,因为它确保数据的一致性和完整性。Java平台提供了Java Transaction API (JTA) 来处理全局事务,适用...

    oracle 在java中的事务处理和异常回滚。

    在Java编程中,Oracle数据库是常用的后端存储系统,而事务处理和异常回滚是确保数据一致性、完整性和可靠性的关键机制。以下是对这个主题的详细讲解。 首先,Oracle JDBC驱动程序是Java与Oracle数据库之间通信的...

    Java事务处理总结[归类].pdf

    Java事务处理是编程中确保数据一致性和完整性的关键机制,特别是在涉及数据库操作的场景下。事务处理遵循ACID原则,即原子性、一致性、隔离性和持久性。原子性确保事务作为一个不可分割的操作单元,要么全部执行,...

    java事务 - 使用注解

    本篇文章将深入探讨如何使用Java注解进行事务管理,特别是Spring框架中的@Transactional注解。 **1. 事务的基本概念** 事务具有四个特性,也称为ACID属性: - 原子性(Atomicity):事务中的所有操作要么全部完成,...

    java事务 - 传递Connection

    在Java中,我们主要通过Java Database Connectivity (JDBC) API来处理事务。"java事务 - 传递Connection"这个主题聚焦于如何通过共享同一`Connection`对象来实现事务的一致性。 首先,了解事务的基本概念是必要的。...

    Java事务的简单代码

    在处理事务时,我们需要使用Connection对象的setAutoCommit(false)方法来禁用自动提交,以便手动控制事务的开始、提交和回滚。 ```java import java.sql.Connection; import java.sql.DriverManager; import java....

    java事务处理

    2. **JTA(Java Transaction API)事务管理**:用于分布式事务处理,通常与J2EE应用服务器一起使用。 #### 二、JDBC事务管理 JDBC(Java Database Connectivity)是Java中用于连接数据库的标准接口。在JDBC中,...

    java事务 - 使用动态代理

    综上所述,使用Java动态代理进行事务管理可以使我们的代码更加模块化,降低业务逻辑与事务处理之间的耦合度。通过Spring的AOP支持,我们可以方便地声明事务边界,让事务管理变得更加优雅和高效。在实际项目中,结合...

Global site tag (gtag.js) - Google Analytics