JDBC

    科技2026-08-23  3

    概念:java database connectivity,用java操作数据库

               JDBC:定义了一套所有的关系型数据库的规则,即接口。

    入门步骤:        1.导入驱动jar包

                 复制java包到目录下

                 add as library

           2.注册驱动

           3.获取数据库连接对象

           4.定义sql

           5.获取sql语句的对象

           6.执行sql,接收返回结果

           7.处理结果

           8.释放资源

    //导入驱动java包 //注册驱动 Class.forName("com.mysql.jdbc.Driver"); //获取连接对象 Connection conn= DriverManager.getConnection("jdbd:mysql://localhost:3306/db3","root","root"); //定义sql语句 String sql="updata account set balance = 500 where id=1"; //获取执行对象 Statement stmt = conn.createStatement(); //执行sql int count = stmt.executeUpdate(sql); //处理结果 System.out.println(count); //释放资源 stmt.close(); conn.close(); JDBC各个对象

    1. DriverManager:驱动管理对象

    2.Connection:数据库连接对象

         1.获取sql对象

         2.管理事务

    3.Statement:执行sql的对象

        执行静态sql语句并返回对象

         executeUpdate执行dml、ddl   返回值是影响行数

         executeQuery :执行DQL 返回值是结果集

    4.ResultSet:结果集对象

          next:游标向下移动一行,判断是否是最后一行末尾,是返回false

          getXxx():获取数据

          Xxx数据类型

         使用步骤:

            游标下移、判断是否有数据,获取数据

    5.PreparedStatement:执行sql的对象

     1.sql注入问题:在拼接sql时有一些关键字参与字符串的拼接,会造成一些安全性问题。

         select * from user where username='sadasd' and password='a' or 'a'='a'

    2.解决注入问题,使用preparedstatement处理

     1.导入驱动jar包

                 复制java包到目录下

                 add as library

           2.注册驱动

           3.获取数据库连接对象

           4.定义sql

                     使用?做占位符

           5.获取sql语句的对象.PreparedStatement

                 使用setXxx(参数1参数2)

           6.执行sql,接收返回结果

           7.处理结果

           8.释放资源

    3.预编译的SQL:参数使用?作为占位符    

     

     

    Processed: 0.012, SQL: 9