JDBC介绍
JDBC是Java的开发者??Sun的Javasoft公司制定的Java数据库连接(Java Data Base Connectivity)技术的简称,是为各种常用数据库提供无缝联接的技术。JDBC在Web和Internet应用程序中的作用和ODBC在Windows系列平台应用程序中的作用类似。ODBC(OpenData Base Connectivity),称为开放式数据库互联技术,是由Microsoft公司倡导并得到业界普遍响应的一门数据库连接技术,如果读者有使用ODBC编程的经验,就会发现JDBC与ODBC很类似。JDBC现在可以连接的数据库包括:xbase、Oracle、Sybase、Aceess以及Paradox等。
JDBC的工作机制
如果用户是从事软件领域工作的,不可能没有听说过SQL(Structure Query Language:结构化查询语言),它是一种标准化的关系型数据库访问语言。在SQL看来,数据库就是表的集合,其中包含了行和列。SQL标准虽然也还处在不断变革之中(任何一门标准如果已一成不变了,那只能说明这门学科已经停止发展了),但其基本内容相对稳定。JDBC定义了Java语言同SQL数据之间的程序设计接口。
JDBC有一个非常独特的动态连接结构,它使得系统模块化。使用JDBC来完成对数据库的访问包括以下四个主要组件:Java的应用程序、JDBC驱动器管理器、驱动器和数据源。
JavaSoft公司开发了JDBC API,JDBC API是一个标准统一的SQL数据存取接口。 JDBC在Internet中的作用与ODBC在Windows系列中的作用类似。它为Java程序提供了一个统一缝地操作各种数据库的接口,程序员编程时,可以不关心它所要操作的数据库是哪个厂家的产品,从而提高了软件的通用性,而且在Internet上确实无法预料你的用户想访问什么类型的数据库。只要系统上安装了正确的驱动器组,JDBC应用程序就可以访问其相关的数据库。
用JDBC来实现访问数据库记录可以采用下面的几个步骤:
1、 通过驱动器管理器获取连接接口。
2、 获得Statement或它的子类。
3、 限制Statement中的参数。
4、 执行Statement。
5、 查看返回的行数是否超出范围。
6、 关闭Statement。
7、 处理其它的Statement
8、 关闭连接接口。
Java作为数据库前台
在信息时代,数据库是用于收集和处理数据的工具,数据库形成了许多公司基础结构的基础。尽管数据库系统非常适合数据的存储和取得,但人类需要某种前台应有程序以查阅和使用存放的数据。
Java对建立数据库服务器前台应用程序的开发人员提供了几个好处。Java是“一旦写成,到处运行”的语言,即Java程序不经改变即可部署到任何运行Java虚拟机的计算机结构和操作系统。对于大公司,有一个公用开发平台好处很大,编程人员可以不再为大公司中的各个平台分别编程。Java也很吸引第三方开发者,单个Java程序即可满足大公司客户的需求。
建立公司系统中基于Java的应用程序和小程序的动力是巨大的。公司对于将结构和操作系统相关模型变成针对网络的模型相当有兴趣。Java代表着节约资源成本的长期战略。
对于开发人员,Java代表巨大的市场机会。大中型企业很少不用数据库进行业务工作的,大部分公司将数据库应用到业务的各个方面,从人事资源到前线客户销售。
JDBC API
JDBC API使开发者不必不断重写程序而可以建立数据库前台。尽管ANSI委员会有个标准组,但每个数据库系统厂家的系统连接和通讯方法仍然五花八门。
为了建立健全独立于平台的应用程序和基于Web的小程序,开发人员应考虑用Java开发前台连接办法。从外部看,第三方软件开发者通过专用办法,通过本地方法集成客户机方库或通过建立第三层和新协议来满足这种需求。
JavaSoft是Sun公司负责开发Java产品的业务单位,和数据库与数据库工具厂家一起建立独立于DBMS的机制,使开发人员不必考虑所用的特定数据库而编写客户机方应用程序。产生的JDBC API第一版是核心JDK 2的一部分。
JDBC向应用程序开发者提供了独立于数据库的统一的API。这个API提供了编写的标准和考虑所有不同应用程序设计的标准。其奥秘是一组由驱动程序实现的Java接口。驱动程序负责标准JDBC调用向支持的数据库所要的具体调用转变。
应用程序编写一次并移植到各种驱动程序上。应用程序不变,驱动程序则各不相同。驱动程序可以用于开发多层数据库设计的中间层,也称中间件(middleware)。
除了向开发者提供统一的独立于DBMS的框架外,JDBC还提供了让开发者保持数据库厂家提供的特定功能的办法。JDBC驱动程序必须支持ANSI AQL-2项目层,但JDBC允许开发者直接将查询字符串传递到连接的驱动程序。这些字段可能是ANSI SQL也可能不是,或者根本不是AQL。这些字符串的使用是基础驱动程序的事。
JDBC不是Mincrosoft的ODBC(开放式数据库连接)规范派生的,JDBC完全是用Java编写的,而ODBC是个C接口。但是,JDBC和ODBC都是基于X/开放SQL命令层接口(CLI),相同的概念性基础使API工作进展更快,使API的接受更加容易。JavaSoft提供了将JDBC变成ODBC的JDBC-ODBC桥。这个用本地方法完成的版本很小很有效。
一般来说,JDBC API中有两层接口:应用程序层,开发人员用API通过SQL调用数据库和取得结果,驱动程序层,处理与具体驱动程序版本的所有通讯。
每个JDBC应用程序(或小程序)至少要有一个JDBC驱动程序,每个驱动程序是针对一种DBMS的。但驱动程序不必直接联到数据库。
利用JDBC代替CGI
迄今为止,通过Java访问数据库的唯一方法就是利用Java中的流调和访问Common Gateway Interface(CGI,公用网关接口)程序。通过Java调用CGI脚本其实是执行一个访问数据库并返回结果的独立程序。
使用这种方法速度很慢,而且会在应用程序中引入更多的错误。这是由于利用两种不同的开发语言开发程序,需要掌握两种不同的技术。使用JDBC,用户只要了解Java语言即可,而使用CGI,用户必须同时使用Java和另一种编程语言。
使用JDBC的另一个原因是它的速度比CGI方法更快。使用CGI方法通常要求计算机执行另一个独立的程序。这个独立的程序访问数据库,处理数据,并将结果返回给调用程序。这就需要多级处理,因而增加了等待时间和出错概率。
调用CGI脚本通常是通过Web服务器执行一个新的脚本,而执行JDBC的数据库命令只需要某种将SQL命令发送给数据库的服务器。这就大大缩短了执行SQL语句的时间,CGI脚本必须独立地连接数据库,处理执行结构,而JDBC的解决方案使应用程序直接与数据库相连,执行各种操作。
JDBC的优点和缺点
JDBC API用于连接Java应用程序与各种关系数据库。这使得人们在建立客户/服务器应用程序时,通常把Java作为编程语言,把任何一种浏览器作为应用程序的友好界面,把Internet或Intranet作为网络主干,把有关的数据库作为数据库后端。以下是使用JDBC的优缺点。
优点如下:
1.JDBC API与ODBC十分相似,有利于用户理解。
2.JDBC使得编程人员从复杂的驱动器调用命令和函数中解脱出来,可以致力于应用程序中的关键地方。
3.JDBC支持不同的关系数据库,使得程序的可移植性大大加强。
4.用户可以使用JDBC-ODBC桥驱动器将JDBC函数调用转换为ODBC。
5.JDBC API是面向对象的,可以让用户把常用的方法封装为一个类,备后用。
缺点如下:
1.使用JDBC,访问数据记录的速度会受到一定程度的影响。
2.JDBC结构中包含了不同厂家的产品,这就给更改数据源带来了很大的麻烦。
分享到:
相关推荐
JDBC介绍,这里不单纯是介绍jdbc的基础,而且把jdbc的结构以及扩展都有介绍,对于初学JDBC的朋友很有帮助,值得下载学习
### JDBC技术介绍 #### 1. JDBC概述 JDBC(Java Database Connectivity)是一种用于执行SQL语句的标准Java API,它可以为多种关系数据库提供统一的访问接口。通过JDBC,Java开发人员可以使用标准的API来连接不同的...
mysql主从复制,ShardingJDBC介绍,nginx
主要调用对象接口介绍 #### 2.1 Connection对象 Connection对象是数据库的会话,代表了应用程序与数据库之间的一个连接。创建Connection对象通常通过DriverManager.getConnection()方法,该方法需要数据库URL、...
Java 数据库连接(JDBC)是Java平台中的一个核心API,用于与各种关系型数据库进行交互。它提供了一种标准的接口,让Java程序可以使用SQL语句来操作数据库,无论是Oracle、MySQL、SQL Server还是其他数据库系统。JDBC...
**一、Sharding-JDBC介绍** Sharding-JDBC是一款轻量级的Java框架,它以客户端直连数据库的方式,提供透明化的数据分片、读写分离以及数据库治理能力。它不依赖任何数据库,适用于微服务架构,适用于Java环境中的...
Sharding JDBC是一款开源的轻量级Java框架,它提供了一种分库分表的解决方案,用于解决大规模数据集下的数据库的性能问题。Sharding JDBC具有易于使用,无需额外依赖和强依赖数据库的特点。它允许开发人员对JDBC进行...
"Spring Data JDBC介绍及实现代码" Spring Data JDBC是Spring框架下的一個新的数据模块,旨在提供对关系数据库的访问,而无需处理JPA的复杂性。Spring Data JDBC的设计理念是提供一个简单的模型,不会有缓存、脏...
1. **Hive JDBC介绍**: - Hive JDBC是Apache Hive的客户端组件,允许用户通过JDBC API访问Hive服务器,执行SQL查询并获取结果。 - 它提供了一种标准的方式来与Hadoop上的Hive数据进行交互,使开发者可以利用现有...
**一、Log4JDBC介绍** Log4JDBC是一个基于Apache Log4j的日志拦截器,它能够监控和记录所有的数据库操作。它的工作原理是通过动态代理或者类加载器拦截对JDBC驱动的调用,然后将这些调用转换为日志事件。这使得我们...
【JDBC介绍】 JDBC(Java Database Connectivity)是Java编程语言中用来规范客户端程序如何访问数据库的应用程序接口,由Sun Microsystems公司(现在的Oracle公司)提出并由JCP(Java Community Process)制定的...
JDBC介绍 1.1 **什么是JDBC?** JDBC是Java中的一个API,它为开发者提供了在Java程序中执行SQL语句的标准方法。通过JDBC,开发者可以创建、更新、查询和管理数据库,而无需了解特定数据库的语法细节,因为JDBC会...
1. **Sharding-JDBC介绍** Sharding-JDBC作为一款Java客户端直连数据库的ORM框架,其工作原理是在JDBC层面上进行拦截,通过配置规则对SQL进行改写,实现数据的分片。它支持常见的数据库如MySQL、Oracle、PostgreSQL...
使用mindmaster打开
1. **JDBC介绍** JDBC是Java语言访问数据库的标准API,它提供了一种统一的方式,使得开发者可以编写与特定数据库无关的代码,从而实现跨数据库平台的兼容性。 2. **Hive JDBC驱动** Hive提供了JDBC驱动,使得应用...
**sharding-jdbc介绍** `Sharding-JDBC`是阿里巴巴开源的数据库中间件,它定位为轻量级Java框架,无需额外部署,只需在Java代码中引入依赖即可。它的主要功能是在数据库层面实现分库分表,解决大数据量下单表性能...
3. Sharding-JDBC介绍: Sharding-JDBC提供了一种轻量级的解决方案,它无需改变原有数据库架构,只需在Java代码中引入依赖,通过配置即可实现分片。它支持SQL92标准,兼容各种数据库方言,并且具备事务管理、读写...
以下将从JDBC概述、数据持久化、Java中的数据存储技术、JDBC介绍、JDBC体系结构、JDBC程序编写步骤以及获取数据库连接等方面详细阐述JDBC的相关知识点。 ### JDBC概述 JDBC作为Java语言中操作数据库的基石,为...