JDBC入门

客户端操作 MySQL 数据库的方式:

1)使用第三方客户端来访问 MySQL:SQLyog、Navicat、SQLWave、MyDB Studio、EMS SQL Manager for MySQL

2)使用 MySQL 自带的命令行方式

3) 通过 Java 来访问 MySQL 数据库,今天要学习的内容\

3.1.1 什么是 JDBC
JDBC 规范定义接口,具体的实现由各大数据库厂商来实现。 

JDBC 是 Java 访问数据库的标准规范,真正怎么操作数据库还需要具体的实现类,也就是数据库驱动。每个

数据库厂商根据自家数据库的通信格式编写好自己数据库的驱动。所以我们只需要会调用 JDBC 接口中的方法即

可,数据库驱动由数据库厂商提供。

使用 JDBC 的好处:
1) 程序员如果要开发访问数据库的程序,只需要会调用 JDBC 接口中的方法即可,不用关注类是如何实现的。

2) 使用同一套 Java 代码,进行少量的修改就可以访问其他 JDBC 支持的数据库

3.1.2 使用 JDBC 开发使用到的包:
会使用到的包

说明
java.sql

所有与 JDBC 访问数据库相关的接口和类
javax.sql

数据库扩展包,提供数据库额外的功能。如:连接池

数据库的驱动

由各大数据库厂商提供,需要额外去下载,是对 JDBC 接口实现的类
3.2 JDBC 的核心 API
接口或类

作用
DriverManager 类

1) 管理和注册数据库驱动

2) 得到数据库连接对象

Connection 接口

一个连接对象,可用于创建 Statement 和 PreparedStatement 对象
Statement 接口

一个 SQL 语句对象,用于将 SQL 语句发送给数据库服务器。
PreparedStatemen 接口

一个 SQL 语句对象,是 Statement 的子接口
ResultSet 接口

 
3.3 导入驱动 Jar 包
   

3.4 加载和注册驱动
加载和注册驱动的方法

描述
Class.forName(数据库驱动实现类)

加载和注册数据库驱动,数据库驱动由 mysql 厂商 "com.mysql.jdbc.Driver"

 疑问:为什么这样可以注册驱动?
package com.lqg;
public class Demo1 {
public static void main(String[] args) throws ClassNotFoundException {
3 / 21//抛出类找不到的异常,注册数据库驱动
Class.forName("com.mysql.jdbc.Driver");
    }
}
 com.mysql.jdbc.Driver 源代码:
// Driver 接口,所有数据库厂商必须实现的接口,表示这是一个驱动类。
public class Driver implements java.sql.Driver {
public Driver() throws SQLException {
    }
static {
try {
DriverManager.registerDriver(new Driver()); //注册数据库驱动
} catch (SQLException var1) {
throw new RuntimeException("Can't register driver!");
        }
    }
}
注:从 JDBC3 开始,目前已经普遍使用的版本。可以不用注册驱动而直接使用。Class.forName 这句话可以省略。

(完)