JDBC简单介绍和了解

为什么要使用JDBC

java 是通过JDBC技术实现对各种数据库访问的,JDBC是java数据库连接技术的简称,它充当了java应用程序与各种不同数据库之间进行对话的媒介。他可以把数据持久保存,这就是一种持久化机制。 持久化是将程序中的数据在瞬间状态和持久状态转换的机制。通俗地讲,就是瞬时数据(如内存中的数据,不能永久保存)持久化为持久化数据(如持久化至数据库中,能够长久保存)。

JDBC的工作原理

在这里插入图片描述
JDBC的工作原理如图,最顶层是我们自己编写的java引用程序,java应用程序可以使用集成在JDK中的java.sql和javax.sql包中的JDBC API来连接和操作数据库。下面往上到下逐步介绍。

JDBC API

JDBC API由sun公司提供,提供了java应用程序与各种不同数据库交互的标准接口,如Connection接口(连接),Statement接口,ResultSet接口(结果集),PreparedStatement接口等。开发者使用这些JDBC接口进行各类操作数据库操作。

JDBC DRIVER Manager

JDBC DRIVER Manager(驱动程序管理器)它是JDBC体系结构的支柱,负责管理各种不同的JDBC驱动,把java应用程序连接到相应的JDBC驱动程序上,位于JDK的java.sql包中。

JDBC驱动

JDBC驱动由各种数据库厂商或第三中间厂商提供,负责连接各种不同的数据库。访问MySQL和Oracle时需要不同的JDBC驱动,这些JDBC驱动都实现了JDBC API中定义的各种接口。

JDBC API介绍

driverManager类:装载驱动程序,并为建立创建新的数据库连接提供支持
Connection 接口:负责连接数据库并担任传送数据的任务
Statement接口:有Connection产生,负责执行SQL语句。
ResultSet接口:负责保存和处理Statement执行后所产生的查询结果。
PreparedStatement接口:Statement的子接口,也有Connection产生,同样负责执行SQl语句。与Statement接口相比,PreparedStatement接口具有高安全性,高性能,高可读性和高维护性的优点。
在这里插入图片描述

JDBC访问数据库的步骤

开发一个JDBC应用程序,需要以下步骤。

加载JDBC驱动

使用Class.forName()方法将给定的JDBC驱动类加载JAVA虚拟机中。若系统中不存在给定的类,则会引发异常,异常的类型为CLssNotFoundException。
Class.forName(“JDBC驱动类的名称”);

与数据建立连接

DriverManager类是JDBC的管理层,作用于用户和驱动程序之间。DriverManager类跟踪可用的驱动程序,并在数据库和相应的驱动之间建立连接。当调用getConnection()方法时,DriverManager类首先从已经加载的驱动l列表中找到一个可以接收该数据库URL的驱动程序,然后请求该驱动程序使用相关的URL,用户名和密码连接到数据库中,于是建立了以数据库的连接,创建连接对象并返回引用。

Connection con=DriverManager.getConnection(数据连接字符串,数据库用户名,密码);

发送SQl语句,并返回结果

一旦连接,就是要连接,就是要该连接创建Statement接口对象,并将SQL语句传递给它所链接的数据库。如果是查询操作,将返回类型为ResultSet的结果集,它包含执行SQL查询的结果。如果是其他操作,将根据调用方法的不同返回布尔值或操作影响的记录目录。

Statement stmt=con.createStatement();
resultSet rs=stmt.executeQuery("SELECT 'id' ,'name' from 'master' ");

处理返回结果

处理返回结果主要是针对查询操作的结果集,通过循环取出结果集中每条记录并做相应处理。

while(rs.next()){
int id=rs.getInt("id");
String name=rs.getString("name");
System.out.println(id+" "+name);

}

一定要明确使用JDBC的四个基本步骤。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值