一、JDBC简介
JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。利用JDBC可以将JAVA代码连接到oracle、DB2、SQLServer、MYSQL等数据库,从而实现对数据库中的数据操作的目的。开发商Sun。目前现在所在的公司采用的操纵数据库的方式就是JDBC。
二、JDBC的作用
简单地说,JDBC 可做三件事:
1、与数据库建立连接
2、发送操作数据库的语句
3、处理结果。
一个简单的实例
package prior.prior.util;
import java.sql.*;
public class JDBCMain {
static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";//定义数据库驱动类型,这属于mysql
static final String DB_URL = "jdbc:mysql://localhost/persms";//数据库路径
static final String USER = "root";
static final String PASS = "123456";
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
try {
//加载驱动
Class.forName(JDBC_DRIVER);
try {
//获取连接对象
conn = DriverManager.getConnection(DB_URL,USER,PASS);
//利用连接对象内置方法,获取Statement对象
stmt = conn.createStatement();
String sql;
sql = "SELECT deptno,dname FROM dept_manager";
//Statement对象包含类查询、删除、更改新相应的方法,例如如下的查找
ResultSet rs = stmt.executeQuery(sql);
//遍历结果
while(rs.next()){
int deptno = rs.getInt("deptno");
String dname = rs.getString("dname");
System.out.println(deptno);
System.out.println(dname);
}
//关闭这些连接对象
rs.close();
stmt.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
}
JDBC API提供了以下接口和类:
-
DriverManager: 这个类管理数据库驱动程序的列表。确定内容是否符合从Java应用程序使用的通信子协议正确的数据库驱动程序的连接请求。识别JDBC在一定子协议的第一个驱动器将被用来建立数据库连接。
-
Driver: 此接口处理与数据库服务器通信。很少直接直接使用驱动程序(Driver)对象,一般使用
DriverManager
中的对象,它用于管理此类型的对象。它也抽象与驱动程序对象工作相关的详细信息 -
Connection : 此接口与接触数据库的所有方法。连接对象表示通信上下文,即,与数据库中的所有的通信是通过此唯一的连接对象。
-
Statement : 可以使用这个接口创建的对象的SQL语句提交到数据库。一些派生的接口接受除执行存储过程的参数。
-
-
Statement提供了许多方法,最常用的方法如下:
(1)execute()方法:运行语句,返回是否有结果集。
(2)executeQuery()方法:运行查询语句,返回ReaultSet对象。
(3)executeUpdata()方法:运行更新操作,返回更新的行数。
(4)addBatch()方法:增加批处理语句。
(5)executeBatch()方法:执行批处理语句。
(6)clearBatch()方法:清除批处理语句。
-
ResultSet: 这些对象保存从数据库后,执行使用
Statement
对象的SQL查询中检索数据。它作为一个迭代器,可以通过移动它来检索下一个数据。 -
SQLException: 这个类用于处理发生在数据库应用程序中的任何错误。