java 事务提交/回滚


1.1        事务实例

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.Statement;

 

public class RunInsert {

   

    /**

     * @param args

     */

    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/jdbc_teaching", "root", "");

          

           // 开启事务

           conn.setAutoCommit( false );

 

           // 创造SQL语句

           String sql = "INSERT INTO user_list ( user_name, user_password ) VALUES ( 'Eric', '123' )";

 

           // 执行SQL语句

           stmt = conn.createStatement();

           stmt.executeUpdate(sql);

          

           // 提交事务

           conn.commit();

          

           System.out.println( "OK!" );

       } catch (Exception e) {

           e.printStackTrace();

           // 回滚事务

           try {

              conn.rollback();

           } catch ( Exception e2 ) {}

       } finally {

           // 关闭Statement

           try {

              stmt.close();

           } catch (Exception e) {}

           // 关闭Connection

           try {

              conn.close();

           } catch (Exception e) {}

       }

    }

}

请使用浏览器的分享功能分享到微信等