zoukankan      html  css  js  c++  java
  • 验证JDBC事务自动提交

    package com.bjpowernode.jdbc;
    
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.SQLException;
    
    /**
     * @Author:杨青
     * @Time:2021/10/26 18:59
     * @Description:
     *      JDBC事务机制:
     *          1.jdbc中的事务是自动提交的:只要执行一条DML语句,则自动提交一次,这是jdbc默认的事务行为
     *            但是在实际业务中,通常都是N条DML语句共同联合才能完成的,必须保证这些DML语句在同一事务中同时成功或同时失败
     *          2.以下程序先验证一下JDBC的事务是否是自动提交机制
     *              测试结果:
     *                  JDBC中只要执行任意一条DML语句,就提交一次
     *
     */
    public class JDBCTest10 {
        public static void main(String[] args) {
            Connection conn=null;
            PreparedStatement ps=null;
            try {
                //1.类加载完成注册驱动
                Class.forName("com.mysql.jdbc.Driver");
                //2.获取连接
                conn= DriverManager.getConnection("jdbc:mysql://localhost:3306/bjpowernode","root","123456");
                //3.获取预编译数据库操作对象
                String sql="update t_user set loginName=?,realName=? where id=?";
                ps=conn.prepareStatement(sql);
                ps.setString(1,"java");
                ps.setString(2,"Java");
                ps.setInt(3,3);
                //4.执行sql语句
                int count=ps.executeUpdate();   //执行第一条update语句
                System.out.println("count:"+count);
                //重新赋值
                ps.setString(1,"python");
                ps.setString(2,"Python");
                ps.setInt(3,3);
                count=ps.executeUpdate();   //执行第二条update语句
                System.out.println("count:"+count);
            } catch (Exception e) {
                e.printStackTrace();
            }  finally {
                //6.释放资源
                if(ps!=null){
                    try {
                        ps.close();
                    } catch (SQLException throwables) {
                        throwables.printStackTrace();
                    }
                }
                if(conn!=null){
                    try {
                        conn.close();
                    } catch (SQLException throwables) {
                        throwables.printStackTrace();
                    }
                }
            }
        }
    }
    

      

  • 相关阅读:
    Python 2.7 中使用 Print 方法
    python
    Python 中 global、nonlocal的使用
    PYTHON中 赋值运算的若干问题总结
    Python List 中 Append 和 Extent 方法不返回值。
    由Python的一个小例子想到的
    PHP环境安全加固
    Tomcat服务安全加固
    网站被植入Webshell的解决方案
    Apache服务安全加固
  • 原文地址:https://www.cnblogs.com/-slz-2/p/15467658.html
Copyright © 2011-2022 走看看