JDBC连接数据库的步骤(新手必看)
JDBC 是 Java 应用程序连接和访问数据库的程序接口,是由多个类和接口组成的 Java 类库,使用这个类库可以方便地访问数据库。
本节详细介绍 JDBC 访问数据库的基本流程。在 Java 中进行 JDBC 编程时,Java 应用程序通常按照下图所示的流程进行。

图 1 JDBC 访问数据库基本流程
建立一个数据库连接,并对数据库进行访问需要以下几个步骤:
常用的关系型数据库提供一个实现了 java.sql.Driver 接口的数据库驱动程序类,简称 Driver 类。通常可以通过 java.lang.Class 类的静态方法 forName(String className) 加载欲连接的数据库的 Driver 类,该方法的入口参数为欲加载的 Driver 类的完整路径。成功加载后,会将 Driver 类的实例注册到 DriverManager 类中。
常用数据库注册加载驱动程序的语句如下:
1) 注册加载 MySQL 的 JDBC 驱动程序
在 Java 中,使用 JDBC 连接数据库包括定义数据库连接 URL 和建立数据库连接。
① 连接 MySQL 的 URL 表现形式:
② 连接 SQL Server 的 URL 表现形式:
③ 连接 Oracle 的 URL 表现形式:
例如,连接本机的 MySQL 数据库,其中端口号为默认值,数据库名为 db1,则其 URL 可以表示为:
连接本机的 SQL Server 数据库,其中端口号为默认值,数据库名为 db2,则其 URL 可以表示为:
连接本机的 Oracle 数据库,其中端口号为默认值,数据库名为 db3,则其 URL 可以表示为:
Connection 对象代表与数据库的连接,主要负责在连接上下文中执行 SQL 语句并返回结果。
关闭对象可调用 close() 方法。
本节详细介绍 JDBC 访问数据库的基本流程。在 Java 中进行 JDBC 编程时,Java 应用程序通常按照下图所示的流程进行。

图 1 JDBC 访问数据库基本流程
建立一个数据库连接,并对数据库进行访问需要以下几个步骤:
- 步骤 01:加载数据库驱动程序;
- 步骤 02:创建数据库的连接;
- 步骤 03:使用 SQL 语句对数据库进行操作;
- 步骤 04:对数据库操作的结果进行处理;
- 步骤 05:关闭数据库连接,释放系统资源。
数据库驱动程序的加载
数据库驱动程序是负责与具体数据库进行交互的软件。使用 JDBC 访问数据库,要根据具体的数据库类型加载不同的数据库驱动程序。常用的关系型数据库提供一个实现了 java.sql.Driver 接口的数据库驱动程序类,简称 Driver 类。通常可以通过 java.lang.Class 类的静态方法 forName(String className) 加载欲连接的数据库的 Driver 类,该方法的入口参数为欲加载的 Driver 类的完整路径。成功加载后,会将 Driver 类的实例注册到 DriverManager 类中。
常用数据库注册加载驱动程序的语句如下:
1) 注册加载 MySQL 的 JDBC 驱动程序
Class.forname("com.mysql.jdbc.driver"); //适用于MySQL早期版本 Class.forname("com.mysql.cj.jdbc.Driver"); //适用于MySQL 8.0以上版本2) 注册加载 SQL Server 的 JDBC 驱动程序
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");3) 注册加载 Oracle 的 JDBC 驱动程序
Class.forName("oracle.jdbc.driver.OracleDriver");
建立数据库连接
要进行数据库操作,首先需要建立连接。在 Java 中,使用 JDBC 连接数据库包括定义数据库连接 URL 和建立数据库连接。
1) 连接数据库的URL表示形式
连接不同数据库时,对应的 URL 也不一样。下面给出几种常用数据库的 URL 表示形式。① 连接 MySQL 的 URL 表现形式:
jdbc:mysql://host:port/dbname
② 连接 SQL Server 的 URL 表现形式:
jdbc:sqlserver://host:port;DatabaseName=dbName
③ 连接 Oracle 的 URL 表现形式:
jdbc:oracle:thin:@ host:port:dbName其中,host 为数据库服务器地址,port 是端口号,dbname 为数据库名称。MySQL、SQL Server 和 Oracle 的默认端口号分别为 3306、1433 和 1521。
例如,连接本机的 MySQL 数据库,其中端口号为默认值,数据库名为 db1,则其 URL 可以表示为:
String mysqlURL= "jdbc:mysql://localhost:3306/db1";
连接本机的 SQL Server 数据库,其中端口号为默认值,数据库名为 db2,则其 URL 可以表示为:
String sqlURL="jdbc:sqlserver://localhost:1433;DatabaseName=db2";
连接本机的 Oracle 数据库,其中端口号为默认值,数据库名为 db3,则其 URL 可以表示为:
String oracleURL= "jdbc:oracle:thin:@localhost:1521:db3";
2) 建立数据库连接
通过 DriverManager 类的静态方法 getConnection() 可建立数据库连接,为了存取数据还需要提供用户名和密码:Connection con=DriverManager.getConnection(URL,"username","password");其中,URL 为数据库连接对象,username 为用户名,password 为用户密码。
Connection 对象代表与数据库的连接,主要负责在连接上下文中执行 SQL 语句并返回结果。
3) 关闭数据库连接
使用数据库连接对象要正确关闭,以免占用系统资源,并且在关闭对象时需要注意关闭顺序,先创建的对象后关闭,后创建的对象先关闭。关闭对象可调用 close() 方法。