|
|
|
|
公众号矩阵

一篇文章带你搞定Java的数据库访问

本文介绍了关系数据库、JDBC的概述、JDBC驱动类型。关系数据库SQL是一种结构化查询语言,介绍它的常用SQL语句,例如增删改查。

作者:Java进阶者来源: Java进阶学习交流|2021-05-31 08:59

一、前言

在应用程序开发中,需要使用数据库管理和存储各种数据。在Java中,提供了一个JDBC技术(Java Database Connectivity,JDBC,Java数据库连接),它的作用是连接数据库并访问。接下来小编带大家一起来学习JDBC技术!

二、关系数据库

1.目前,各种关系数据库的操作基本使用SQL语言,SQL(Structured Query Language)是一个结构化查询语言。

2.常用的SQL语句,如下所示:

三、JDBC的概述

1.JDBC是一种执行SQL语句的Java API。它由一组使用Java语言编写的类和接口组成,使开发人员可以使用Java API来编写数据库应用程序。

2.使用JDBC的技术向各种关系数据库发送SQL语句就很方便,就不必为访问Oracle数据库专门写一个程序,为访问Sybase数据库又专门写一个程序,只需要JDBC API写一个程序向相应的数据库发送SQL语句即可。开发人员使用Java语言和SQL语句编写的数据库应用程序,可以在任何平台上运行。

3.JDBC驱动可以分为四种类型,包括了JDBC-ODBC桥、本地API驱动、网络协议驱动、本地驱动。在后面会详细的介绍这四种类型。

四、JDBC驱动类型

(一)JDBC-ODBC桥

JDBC-ODBC桥:通过驱动程序将所有的JDBC调用传给ODBC(Open Database Connectivity,ODBC,开放数据库互连),然后ODBC调用本地数据库接口访问数据库,这种执行效率很低,它是不适合需要存储大量数据的应用。

如下图所示:

1)首先SQL命令通过ODBC-Bridge传给ODBC,再由ODBC连接数据库并传递SQL命令到数据库中。

2)ODBC接受数据库返回结果,然后通过ODBC-Bridge返回的结果给应用程序。

(二)本地API驱动

本地API驱动:通过JDBC-Native API桥接器的转换,然后把客户机API上的JDBC调用转换成Oracle、 Sybase、Informix、DB2,最后存取数据库。

如下图所示:

1)首先应用程序去调用JDBC Driver,然后JDBC Driver使用本地函数库和数据库进行沟通。

2)本地函数库返回执行结果给JDBC Driver,最后JDBC Driver返回结果给应用程序。

(三)网络协议驱动

网络协议驱动:把JDBC 转换成与 DBMS 无关的网络协议,该协议又给某个服务器转换成一种DBMS的协议。在该网络服务器有个中间件(middleware)可以把Java客户机连接到不同的数据库中,它所使用的具体协议来自提供者。

如下图所示:

1)通过SQL命令使JDBC Driver传给Middleware Server中,然后Middleware Server把SQL命令传给数据库,并和数据库进行沟通。

2)将结果返回给Middleware Server,最后JDBC Driver返回的结果给应用程序。

(四)本地协议驱动

本地协议驱动:通过把JDBC调用转换成具体的数据库服务器,让它可以接受网络协议,然后允许客户机上来调用DBMS服务器(数据库管理系统(Database Management System,DBMS)),它是Intranet访问最有效的一个解决方法。

如下图所示:

1)首先应用程序把SQL命令传给JDBC Driver,然后JDBC Driver通过连接数据库传给SQL命令。

2)将执行的结果返回给JDBC Driver,最后JDBC Driver返回结果给应用程序。

五、总结

1.本文介绍了关系数据库、JDBC的概述、JDBC驱动类型。

2.关系数据库SQL是一种结构化查询语言,介绍它的常用SQL语句,例如增删改查。

3.JDBC是一种执行SQL语句的Java API。它由一组使用Java语言编写的类和接口组成,使开发人员可以使用Java API来编写数据库应用程序。

4.JDBC驱动类型分为四种,包括了JDBC-ODBC桥、本地API驱动、网络协议驱动、本地驱动,介绍了每一种驱动类型的作用。

5.希望大家通过本文的学习,对你有所帮助!

【编辑推荐】

  1. 鸿蒙官方战略合作共建——HarmonyOS技术社区
  2. 接入网究竟是个什么网
  3. 程序员年龄增大后的职业出路是什么?
  4. 从源码中来,到业务中去,React性能优化终极指南
  5. 等了这么久,谷歌终于推出Fuchsia OS了
  6. GC详解,看完这篇同事小勇都惊呆了
【责任编辑:姜华 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

订阅专栏+更多

带你轻松入门 RabbitMQ

带你轻松入门 RabbitMQ

轻松入门RabbitMQ
共4章 | loong576

7人订阅学习

数据湖与数据仓库的分析实践攻略

数据湖与数据仓库的分析实践攻略

助力现代化数据管理:数据湖与数据仓库的分析实践攻略
共3章 | 创世达人

8人订阅学习

云原生架构实践

云原生架构实践

新技术引领移动互联网进入急速赛道
共3章 | KaliArch

40人订阅学习

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊

51CTO服务号

51CTO官微