002 JDBC

作者: 你挺ne呀 | 来源:发表于2021-02-24 23:57 被阅读0次

    一般流程


            //1.import the package of jdbc-connection-jar
            //2.registration driven
            Class.forName("org.mariadb.jdbc.Driver");
            //3.get Object of Databases_Connection
            Connection conn = DriverManager.getConnection("jdbc:mariadb://localhost:3306/wuliu", "root", "root");
            //4.definition a sql statement
            String sql = "update custom set custom_tel = 12345678910 where custom_id = 1";
            //String sql = "update city set probince_id = 800 where city_id = 1";
            //5.get Object of sql_action, use a word <"Statement">.
            Statement stm = conn.createStatement();
            //6.The sql statement is running.
            long results = stm.executeLargeUpdate(sql);
            //7.results of treatment
            System.out.println(results);
            //8.free the resources.
            stm.close();
            conn.close();
    

    各类详解

    • DriverManager 驱动管理对象
      1.注册驱动
      static { try { DriverManager.registerDriver(new Driver(), new DeRegister()); } catch (SQLException var1) { throw new RuntimeException("Could not register driver", var1); } }
      2.获取数据库连接
      ......

    • Connection 数据库链接对象
      1.获取执行sql的对象.
      2.管理事务.
      开启事务.
      提交事务.
      回滚事务.

    • Statement 执行sql的对象(执行静态语句)
      执行静态语句.
      int executeUpdate(sql):执行DML(insert,update,delete)语句,DDL(create,alter,drop)语句.返回值为更改的行数.
      ResultUpdate(sql): 执行DQL(select)语句.

    • ResultSet 结果集对象
      封装查询结果.

      1. next() : 游标向下移动. 返回值为boolean类型.
      2. getXXX(参数):
      - 获取数据. 如: int getInt(), String getString()等.
      - 参数: 1.int: 代表列的编号,从1开始.      eg. getString(1)
             2.String: 代表列的名称.      eg.getString("balance")
      
    • PreparedStatement
      * 解决sql注入问题
      * 参数使用"?"作为占位符.

      >  1. 在定义sql时用?作为占位符.
         2. 获取执行sql语句的对象PreparedStatement  :  Connection.prepareStatement(String sql)
         3. 给?赋值 :  
              * 方法: *setXXX(?_index, ?_value) *
      

    JDBC 事务


    • 开启事务 : 执行sql之前开启事务.
      setAutoCommit(boolean autoCommit) : 调用该方法设置参数为false,即开启事务.
    • 提交事务. commit(). : 执行sql完成后提交事务.
    • 回滚事务. rollback(). : 执行sql出错时回滚事务.

    其他相关用法

    • executeUpdate()方法可用于增删改和创建语句.
    • 获取src文件路径下的方式--> ClassLoader 类加载器.
      ClassLoader cl = UtilsDemo.class.getClassLoader();
      URL resource = cl.getResource("sql.properties");
      String path = resource.getPath();

    相关文章

      网友评论

          本文标题:002 JDBC

          本文链接:https://www.haomeiwen.com/subject/pkgefltx.html