一、概述
JDBC(Java Database Connectivity),是sun提出的一套访问各种数据库系统的API,它是一套规范,标准化了连接,查询和事务处理的语法,以及查询结果的数据结构。利用JDBC,你可以对数据库执行SQL语句,来完成和数据库的交互。无论是Hibernate也好,iBatis也好,其实现的基础,都是JDBC。
下面这幅图展示了Java Application是如何通过JDBC来和数据库进行交互的:
首先,Application调用JDBC接口,而JDBC则导入JDBC驱动(Driver),最终和数据库交互的是各种驱动。
二、JDBC驱动分类
JDBC的驱动分成四类:
1. JDBC-ODBC桥驱动
通过驱动调用ODBC来访问数据库。
2. 本地API部分JAVA驱动
利用开发商提供的本地库直接与数据库通信。
3. JDBC-NET纯JAVA驱动
与DBMS协议无关,不安装本地库。
4. 本地协议纯JDBC驱动
将JDBC调用直接转换为DBMS所用的网络协议。
三、JDBC体系结构
我们来看看JDBC访问数据库的步骤:
具体每个接口就不详细介绍了。我们来看一下示例代码吧
Connection conn = null;
Statement stmt = null;
// PreparedStatement pstmt = null;
ResultSet rs = null;
try {
// 1. 注册Driver
// DriverManager.registerDriver(new oracle.jdbc.Driver());
Class.forName("oracle.jdbc.OracleDriver");
// 2. 建立连接
conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:TESTDB", "user", "pwd");
// 设置事务方式
conn.setAutoCommit(false);
// 3. 创建Statement对象
stmt = conn.createStatement();
// 4. 执行操作
// 4.1 read
rs = stmt.executeQuery("select * from user u");
while(rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
// print it
}
// 4.2 create
stmt.executeUpdate("insert into user values (5, 'xx', 'xxx')");
// 4.3 update
stmt.execute("update user u set u.name = 'bbb' where u.id = 5");
// 4.4 delete
stmt.execute("delete from user u where u.id = 2");
// 5. 提交事务
conn.commit();
rs.close();
stmt.close();
conn.close();
} catch (ClassNotFoundException ce) {
// log.error("xxx" + ce.getMessage());
try {
// only for cud operations
conn.rollback();
} catch (SQLException e) {
// log.error("xxx" + e.getMessage());
}
} catch (SQLException se) {
// log.error("xxx" + se.getMessage());
try {
conn.rollback();
} catch (SQLException e) {
// log.error("xxx" + e.getMessage());
}
} catch (Exception e) {
// log.error("xxx" + e.getMessage());
} finally {
try {
if(rs != null) {
rs.close();
}
if(stmt != null) {
stmt.close();
}
if(conn != null) {
conn.close();
}
} catch (SQLException e) {
// log.error('xxx');
}
}
写得非常简单,因为现在基本上接触不到JDBC的具体代码了。写这篇文章的目的,主要就是让自己在忘了JDBC的时候,能在两分钟之内回想起来。
- 大小: 8.7 KB
- 大小: 24.5 KB
分享到:
相关推荐
JDBC基础JDBC基础JDBC基础JDBC基础JDBC基础JDBC基础JDBC基础JDBC基础JDBC基础
"jdbc 基础的详解与总结" jdbc 是一套协议,由 Sun 公司定义的一组接口,由数据库厂商来实现,并规定了 Java 开发人员访问数据库所使用的方法的调用规范。jdbc 的实现是由数据库厂商提供,以驱动程序形式提供。jdbc...
**JDBC基础实例详解** Java Database Connectivity (JDBC) 是Java平台中用于与关系数据库进行交互的一种标准接口。它是Java编程语言的一部分,允许应用程序通过Java代码执行SQL语句,实现数据的增删改查操作。对于...
**JDBC基础知识** Java Database Connectivity (JDBC)是Java编程语言中用于标准地访问数据库的API。它由一组Java类和接口组成,允许Java应用程序连接到各种类型的数据库系统,包括Oracle、MySQL、SQL Server等。...
JDBC基础.chmJDBC基础.chm
**JDBC基础学习目标:** 1. **理解Java中的数据库连接**:了解Java如何通过JDBC API与各种类型的数据库(如关系型、面向对象关系型和面向对象数据库)建立连接。 2. **掌握JDBC API**:熟悉java.sql包中的核心类和...
**JDBC基础知识详解** Java Database Connectivity (JDBC) 是Java平台上的一个标准API,用于与关系型数据库进行交互。它是Java开发者访问数据库的唯一、统一的接口,由Sun Microsystems(现已被Oracle收购)定义,...
jdbc基础篇教程md版:这份markdown格式的教程详细介绍了jdbc的基础概念、配置方法以及如何通过jdbc进行数据库的增删改查(crud)操作。教程内容涵盖了jdbc驱动的加载、数据库连接的建立、sql语句的执行以及结果集的...
了解JDBC的概念及必要性 了解JDBC驱动程序类型 理解JDBC 程序的结构 运用JDBC进行数据库编程
### JDBC基础知识总结 #### 一、概述 JDBC(Java Database Connectivity)是一种标准的Java API,用于连接并操作各种类型的数据库。它从物理结构上说就是一套Java语言访问数据库的接口集合,本质上则是调用者...
### JDBC基础教程之连接知识点详解 #### 一、Connection对象及其作用 - **Connection对象**:在JDBC中,`Connection`对象代表了一个与数据库之间的连接。通过这个连接,应用程序可以执行SQL语句并获取结果集。 - *...
**JDBC基础入门详解** Java Database Connectivity(JDBC)是Java平台中用于与数据库交互的一组接口和类,它是Java标准API的一部分,使得Java开发者能够访问各种类型的数据库系统。本篇将详细介绍JDBC的基础知识,...
### JDBC基础教程之概述 #### 一、JDBC简介与概念理解 JDBC(Java Database Connectivity)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC的...
【JDBC基础】 JDBC(Java Database Connectivity)是Java编程语言中用于访问数据库的标准Java API,它允许Java开发者在程序中执行SQL语句并与各种数据库进行交互。JDBC为Java程序员提供了一种统一的方式来连接和操作...
在学习JDBC基础时,主要涉及以下几个关键知识点: 1. **快速入门**: - 安装Java和JDBC:确保你拥有与JDBC兼容的JDK版本,通常JDBC会随JDK一起安装。 - 安装驱动程序:根据选择的数据库,安装相应的JDBC驱动,如...
Java操作数据库JDBC基础demo是Java开发者必备的技能之一,JDBC(Java Database Connectivity)是Java语言连接数据库的标准API,它允许Java程序与各种不同类型的数据库进行交互。在这个基础demo中,我们将涵盖JDBC的...
**JDBC基础——深入理解与实践** Java Database Connectivity(JDBC)是Java平台中用于与关系型数据库交互的标准API,它允许Java程序通过编写Java代码来执行SQL语句,进行数据查询、插入、更新和删除等操作。了解并...
**JDBC基础培训课件** Java Database Connectivity (JDBC) 是Java编程语言中用于与数据库交互的一组接口和类。它是Java平台的标准部分,由Java SE的Java Database Connectivity API提供,使得开发者能够编写数据库...