1. 概念
1.1 介绍
JDBC全称为Java Database Connectivity,中文名称为 Java 数据库连接,它是一种用于执行 SQL 语句的 Java API,它由一组用 Java 编程语言编写的类和接口组成。JDBC 为数据库开发人员提供了一个标准的 API,使他们能够用纯 Java API 来编写数据库应用程序。
1.2组成
JDBC API 是 Java 开发工具包(JDK)的组成部份,由三部分组成:
- JDBC 驱动程序管理器
- JDBC 驱动程序测试工具包
- JDBC-ODBC 桥
a. JDBC 驱动程序管理器是 JDBC 体系结构的支柱,其主要作 用是把 Java 应用程序连接到正确的 JDBC 驱动程序上。
b. JDBC 驱动程序测试工具包为 JDBC 驱动程序的运行提供一定的可信度,只有通过 JDBC 驱动程序测试包的驱动程序才被认为是符合 JDBC 标准的。
c. JDBC-ODBC 桥使 ODBC 驱动程序可被用作 JDBC 驱动程序。其目标是为方便实现访问某些不常见的 DBMS(数据库管理系统),它的实现为 JDBC 的快速发展提供了一条途径。
1.3 数据库访问模型
- 数据库访问的两层模型
- 数据库访问的三层模型
2. JDBC连接数据库
2.1 步骤
- 导入驱动程序
- 注册驱动程序:JVM加载所需的驱动类到内存
- 数据库URL指定
- 创建连接对象:代码调用
DriverManager
对象的getConnection()
方法建立实际的数据库连接
2.2 导入JDBC驱动
将mysql-connector-java-5.1.7-bin加入biuld-path
2.3 注册驱动程序
将我们将要使用的数据库的驱动类文件动态的加载到内存中
- 方法1——
Class.forName()
:
Class.forName("com.mysql.jdbc.Driver");
- 方法2——
DriverManager.registerDriver()
:
Driver driver = new com.mysql.jdbc.Driver();
DriverManager.registerDriver(driver);
2.4 指定数据库连接URL
DriverMannager.getConnection()有三个重载方法
getConnection(String url)
getConnection(String url, Properties prop)
getConnection(String url, String user, String password)
下表列出了下来流行的JDBC驱动程序名和数据库的URL
项目 | Value | URL |
---|---|---|
Mysql | com.mysql.jdbc.Driver | jdbc:mysql://hostname/ databaseName |
Oracle | oracle.jdbc.driver.OracleDriver | jdbc:oracle:thin:@hostname:port Number:databaseName |
DB2 | COM.ibm.db2.jdbc.net.DB2Driver | jdbc:db2:hostname:port Number/databaseName |
Sybase | com.sybase.jdbc.SybDriver | jdbc:sybase:Tds:hostname: port Number/databaseName |
2.5 创建连接对象
下面三种形式DriverManager.getConnection()方法来创建一个连接对象,以 Mysql 为例。getConnection()最常用形式要求传递一个数据库URL,用户名 username和密码 password。
- 使用数据库URL的用户名和密码
String URL = "jdbc:mysql://localhost/EXAMPLE";
String USER = "username";
String PASS = "password"
Connection conn = DriverManager