JDBC概念介绍:对于一些数据预先写好的程序,应用程序和数据库服务器之间通过JDBC实现数据交互,使数据可以动态变化。JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。具体构成如图所示:
- JDBC API:提供了应用程序对JDBC的管理连接,定义了一系列的接口和类,集成在java.sql和javax.sql包中
- JDBC Driver API:支持JDBC管理到驱动器连接
- JDBC驱动程序管理器:可确保正确的驱动程序来访问每个数据源。该驱动程序管理器能够支持连接到多个异构数据库的多个并发的驱动程序
-
DriverManager:管理各种不同的JDBC驱动
-
JDBC 驱动:负责连接不同类型的数据库
JDBC API:JDBC API提供了以下接口和类:
DriverManager:这个类管理数据库驱动程序的列表。确定内容是否符合从Java应用程序使用的通信子协议正确的数据库驱动程序的连接请求。识别JDBC子协议的第一个驱动器将被用来建立数据库连接。
Driver:此接口处理与数据库服务器通信。很少直接使用驱动程序(Driver)对象,一般使用DriverManager中的对象,它用于管理此类型的对象。它也抽象与驱动程序对象工作相关的详细信息
Connection:此接口与接触数据库的所有方法。连接对象表示通信上下文,即,与数据库中的所有的通信是通过此唯一的连接对象。
Statement:可以使用这个接口创建的对象的SQL语句提交到数据库。一些派生的接口接受除执行存储过程的参数。
ResultSet:这些对象保存到数据库后,执行使用Statement对象的SQL查询检索数据。它作为一个迭代器,可以通过移动它来检索下一个数据。
SQLException:这个类用于处理发生在数据库应用程序中的任何错误。
JDBC操作步骤:JDBC访问/操作数据库通常有以下几个步骤:
- DriverManager加载驱动程序:加载驱动程序只需要非常简单的一行代码。
Class.forName("JDBC驱动类名称");
Class.forName(driverClass); //加载驱动程序
Class.forName("com.mysql.jdbc.Driver"); //加载MySql驱动
Class.forName("oracle.jdbc.driver.OracleDriver"); //加载Oracle驱动
- 建立Connection连接:第二步就是用适当的驱动程序类与 DBMS 建立一个连接。(在加载驱动及获取连接过程中,可能会出现异常,因此需要注意进行异常处理)
Connection conn = DriverManager.getConnection(数据库URL, 数据库用户名, 密码);
- 创建对象:创建Statement执行SQL语句,Statement 对象用于把 SQL 语句发送到 DBMS 。你只须简单地创建一个 Statement 对象然后执行它,并使用适当的方法执行你发送的 SQL 语句。
- 执行语句:对于SELECT 语句,可以使用 executeQuery方法;对于创建或修改表的语句,可以使用的方法是 executeUpdate。
-
返回ResultSet查询结果
查询结果