JDBC第二章 (JDBC API详解)

这篇博客详细介绍了JDBC的使用,包括下载驱动、加载注册驱动、建立数据库连接、Statement与ResultSet操作,重点讨论了如何防止SQL注入,详细解析了PreparedStatement的原理与应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、下载驱动包

二、加载与注册驱动

1、使用driverManager类

2、方式:

3、补充:

三、建立连接

1、URL

2.建立连接的方式

3.事务管理

4.获取Statement语句

1、普通版本

2、防止SQL注入版本

3、获取存储过程

四、Statement

1、概述

2、例子

五、结果集 ResultSet

1、概述

2、RestultSet 里面提供的方法

3、举例实操

需求:获取account表中的全部数据

代码实现:

注意

补充java数据类型和SQL类型对照表

六、SQL注入问题

1、sql注入(由于去改变sql语法结构)

2、preparedStatement 预编译语句补充

1、作用:

2、获取PreparedStatement语句

3、设置参数值

3、PreparedStatement 原理



一、下载驱动包

地址:https://mvnrepository.com

二、加载与注册驱动

1、使用driverManager类

2、方式:

  • Class.forName("com.mysql.cj.jdbc.Driver");
  • //注册驱动
    DriverManager.registerDriver(com.mysql.cj.jdbc.Driver);
  • System.setProperty("jdbc.drivers","com.mysql.cj.jdbc.Driver");

注意:方式一和方式三建立的驱动相同,方式一通过反射的方法来设置驱动,方式三直接设置驱动

3、补充:

  • Mysql 驱动包5.0之后的版本,可以省略注册驱动的步骤

三、建立连接

1、URL

1.1表示连接路径

1.2参数说明

String url = "jdbc:mysql://localhost:3306/jdbc";

1.3 JDBC URL的组成

JDBC URL的标准由三部分组成(jdbc:子协议:子名称),各部分之间用 隔开

  • 协议:JDBC URL 中的协议就是jdbc

  • 子协议:用来标识数据库驱动程序

  • 子名称:标识数据库的方法。定位数据库需要ip,端口port,数据库名称

1.4 常见数据库的JDBC URL

  • Oracle jdbc:oracle:thin@主机名称:oracle服务端口:Databasename=数据库名称

2.建立连接的方式

        String url = "jdbc:mysql://localhost:3306/jdbc";
//        建立连接方式一
//        String user = "root";
//        String password = "123456";
//        Connection connection = DriverManager.getConnection(url,user,password);
​
​
//        获取连接的方式二   com.mysql.cj.jdbc.ConnectionImpl@fcd6521
        Properties properties = new Properties();
        properties.setProperty("user","root");
        properties.setProperty("password","123456");
        Connection connection = DriverManager.getConnection(url, properties);

3.事务管理

//        开启事务
        connection.setAutoCommit(false);
//        事务提交
        connection.commit();
 

4.获取Statement语句

1、普通版本

Statement statement = connection.createStatement();

2、防止SQL注入版本

//        获取预编译语句
connection.prepareStatement();
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值