java JBDC

作者: 小和大大 | 来源:发表于2022-11-08 16:17 被阅读0次

一. 什么是JDBC

JDBC(Java DataBase Connectivity)就是Java数据库连接,说白了就是用Java语言来操作数据库。原来我们操作数据库是在控制台使用SQL语句来操作数据库,JDBC是用Java语言向数据库发送SQL语句。

在这里插入图片描述

二. JDBC的原理

早期SUN公司的天才们想编写一套可以连接天下所有数据库的API,但是当他们刚刚开始时就发现这是不可完成的任务,因为各个厂商的数据库服务器差异太大了。后来SUN开始与数据库厂商们讨论,最终得出的结论是,由SUN提供一套访问数据库的规范(就是一组接口),并提供连接数据库的协议标准,然后各个数据库厂商会遵循SUN的规范提供一套访问自己公司的数据库服务器的API出现。SUN提供的规范命名为JDBC,而各个厂商提供的,遵循了JDBC规范的,可以访问自己数据库的API被称之为驱动!

在这里插入图片描述

JDBC是接口,而JDBC驱动才是接口的实现,没有驱动无法完成数据库连接!每个数据库厂商都有自己的驱动,用来连接自己公司的数据库。

当然还有第三方公司专门为某一数据库提供驱动,这样的驱动往往不是开源免费的!

三. 程序员,JDBC,JDBC驱动的关系及说明

JDBC API

提供者:Sun公司

内容:供程序员调用的接口与类,集成在java.sql和javax.sql包中,如

1.DriverManager类 作用:管理各种不同的JDBC驱动

2.Connection接口

3.Statement接口

4.ResultSet接口

JDBC 驱动

提供者:数据库厂商

作用:负责连接各种不同的数据库

Java程序员

     JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。

三方关系

SUN公司是规范制定者,制定了规范JDBC(连接数据库规范)

数据库厂商微软、甲骨文等分别提供实现JDBC接口的驱动jar包

程序员学习JDBC规范来应用这些jar包里的类。

在这里插入图片描述

四. JDBC的总结

简单地说,JDBC 可做三件事:与数据库建立连接、发送 操作数据库的语句并处理结果。

在这里插入图片描述

DriverManager :依据数据库的不同,管理JDBC驱动

Connection :负责连接数据库并担任传送数据的任务

Statement :由 Connection 产生、负责发送执行SQL语句

ResultSet:负责保存Statement执行后所产生的查询结果

五. JDBC连接数据的步骤

1:加载一个Driver驱动

2:创建数据库连接(Connection)

3 : 创建SQL命令发送器Statement

4:通过Statement发送SQL命令并得到结果

5:处理SQL结果(select语句)

6:关闭数据库资源

ResultSet

Statement

Connection。

六. JDBC连接数据的详细步骤

1.加载驱动

加载JDBC驱动是通过调用方法 java.lang.Class.forName() ,下面列出常用的几种数据库驱动程序加载语句的形式 :

Class.forName(“oracle.JDBC.driver.OracleDriver”);//使用Oracle的JDBC驱动程序

Class.forName(“com.microsoft.JDBC.sqlserver.SQLServerDriver”);//使用SQL Server的JDBC驱动程序

Class.forName(“com.ibm.db2.JDBC.app.DB2Driver”);//使用DB2的JDBC驱动程序

Class.forName(“com.mysql.JDBC.Driver”);//使用MySql的JDBC驱动程序
2.创建数据库连接

与数据库建立连接的方法是调用DriverManager.getConnection(String url, String user, String password ) 方法

Connection conn=null;

String url=“jdbc:oracle:thin:@localhost:1521:orcl”;

String user=“scott";

String password=“tiger";

conn = DriverManager.getConnection(url, user, password);
3.创建Statement并发送命令

Statement对象用于将 SQL 语句发送到数据库中,或者理解为执行sql语句

有三种 Statement对象:

Statement:用于执行不带参数的简单SQL语句;

PreparedStatement(从 Statement 继承):用于执行带或不带参数的预编译SQL语句;

CallableStatement(从PreparedStatement 继承):用于执行数据库存储过程的调用。
在这里插入图片描述
4.处理ResultSet结果

ResultSet对象是executeQuery()方法的返回值,它被称为结果集,它代表符合SQL语句条件的所有行,并且它通过一套getXXX方法(这些get方法可以访问当前行中的不同列)提供了对这些行中数据的访问。

ResultSet里的数据一行一行排列,每行有多个字段,且有一个记录指针,指针所指的数据行叫做当前数据行,我们只能来操作当前的数据行。我们如果想要取得某一条记录,就要使用ResultSet的next()方法 ,如果我们想要得到ResultSet里的所有记录,就应该使用while循环。

ResultSet对象自动维护指向当前数据行的游标。每调用一次next()方法,游标向下移动一行。

初始状态下记录指针指向第一条记录的前面,通过next()方法指向第一条记录。循环完毕后指向最后一条记录的后面。

在这里插入图片描述
5.关闭数据库资源

作为一种好的编程风格,应在不需要Statement对象和Connection对象时显式地关闭它们。关闭Statement对象和Connection对象的语法形式为:

public void close() throws SQLException

用户不必关闭ResultSet。当它的 Statement 关闭、重新执行或用于从多结果序列中获取下一个结果时,该ResultSet将被自动关闭。

注意:要按先ResultSet结果集,后Statement,最后Connection的顺序关闭资源,因为Statement和ResultSet是需要连接是才可以使用的,所以在使用结束之后有可能其他的Statement还需要连接,所以不能先关闭Connection。

原文链接:https://blog.csdn.net/qq_43623447/article/details/106494077

相关文章

  • java JBDC

    一. 什么是JDBC JDBC(Java DataBase Connectivity)就是Java数据库连接,说白...

  • Java_(jdbc dbutile c3p0)

    JDBC 首先我们要了解什么是JBDC:在我们建立了数据库之后,需要与java代码关联,可以通过java代码执行数...

  • (2) jbdc入门程序

    首先需要准备环境 运行环境 :jdk 1.8开发环境: idea项目构建:maven需要的jar文件: mysql...

  • java使用jdbc驱动去访问数据库

    访问步骤: 1.下载jbdc驱动(百度搜索jdbc) * 2.建立文件夹lib————将驱动支架复制过来————...

  • MySQL 基础16 JBDC 事物

    1.1 事务的概念   事务指的是逻辑上的一组操作,组成这组操作各个逻辑单元要么全都成功,要么全都失败。 1.1....

  • JBDC基础--学习笔记(1)

    一.什么是JDBC? 使用java 代码或程序发送sql语句的技术,就是jdbc技术 使用jdbc发送sql前提 ...

  • MySQL JBDC驱动抛出SocketTimeoutExcep

    才工作一两年用Oracle的时候,一些网络问题会造成应用线程一直卡在 SocketInputStream.read...

  • Java(JavaEE)学习线路图1

    Java教程 Java 教程Java 简介Java 开发环境配置Java 基础语法Java 对象和类Java 基本...

  • Java学习线路图

    Java教程 Java 教程Java 简介Java 开发环境配置Java 基础语法Java 对象和类Java 基本...

  • 大数据学习线路图

    Java教程 Java 教程Java 简介Java 开发环境配置Java 基础语法Java 对象和类Java 基本...

网友评论

      本文标题:java JBDC

      本文链接:https://www.haomeiwen.com/subject/jswwtdtx.html