问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java.sql的JDBCAPI

发布网友 发布时间:2022-04-07 18:14

我来回答

2个回答

懂视网 时间:2022-04-07 22:35

1、JDBC接口及数据库厂商的实现

    1.DriverManager    驱动管理

    2.Connection      连接接口

     DatabaseMetaData  

    3.Statement      语句对象接口

     PreparedStatement

     CallableStatement

    4.ResultSet      结果集接口

     ResultSetMetaData  结果集接口

2、

JDBC有关对象和API

标签:

热心网友 时间:2022-04-07 19:43

JDBC 是个低级接口,也就是说,它用于直接调用 SQL 命令。在这方面它的功能极佳,并比其它的数据库连接 API 易于使用,但它同时也被设计为一种基础接口,在它之上可以建立高级接口和工具。高级接口是对用户友好的接口,它使用的是一种更易理解和更为方便的 API,这种API在幕后被转换为诸如 JDBC 这样的低级接口。
在关系数据库的对象/关系映射中,表中的每行对应于类的一个实例,而每列的值对应于该实例的一个属性。于是,程序员可直接对 Java 对象进行操作;存取数据所需的 SQL 调用将在掩盖下自动生成。此外还可提供更复杂的映射,例如将多个表中的行结合进一个 Java 类中。
随着人们对 JDBC 的兴趣日益增涨,越来越多的开发人员一直在使用基于 JDBC 的工具,以使程序的编写更加容易。程序员也一直在编写力图使最终用户对数据库的访问变得更为简单的应用程序。例如应用程序可提供一个选择数据库任务的菜单。任务被选定后,应用程序将给出提示及空白供填写执行选定任务所需的信息。所需信息输入应用程序将自动调用所需的 SQL 命令。在这样一种程序的协助下,即使用户根本不懂 SQL 的语法,也可以执行数据库任务。 JDBC与ODBC和其他API的比较,基于windows平台,Microsoft 提供了 ODBC API 用于访问关系数据库的编程接口。 它能在几乎所有平台上连接几乎所有的数据库。为什么 Java 不使用 ODBC?对这个问题的回答是:Java 可以使用 ODBC,但最好是在 JDBC 的帮助下以 JDBC-ODBC 桥的形式使用,这一点我们稍后再说。现在的问题已变成:为什么需要 JDBC?答案是显然的:ODBC 不适合直接在 Java 中使用,因为它使用 C 语言接口。从Java 调用本地 C 代码在安全性、实现、坚固性和程序的自动移植性方面都有许多缺点。从 ODBC C API 到 Java API 的字面翻译是不可取的。例如,Java 没有指针,而 ODBC 却对指针用得很广泛(包括很容易出错的指针void *)。您可以将 JDBC 想象成被转换为面向对象接口的 ODBC,而面向对象的接口对 Java 程序员来说较易于接收。
ODBC 很难学。它把简单和高级功能混在一起,而且即使对于简单的查询,其选项也极为复杂。相反,JDBC 尽量保证简单功能的简便性,而同时在必要时允许使用高级功能。启用纯 Java 机制需要象 JDBC 这样的 Java API。如果使用ODBC,就必须手动地将 ODBC驱动程序管理器和驱动程序安装在每台客户机上。如果完全用 Java 编写 JDBC驱动程序则 JDBC 代码在所有 Java 平台上(从网络计算机到大型机)都可以自 动安装、移植并保证安全性。
总之,JDBC API 对于基本的 SQL 抽象和概念是一种自然的 Java 接口。它建立在 ODBC 上而不是从零开始。因此,熟悉 ODBC 的程序员将发现 JDBC 很容易使用。JDBC 保留了 ODBC 的基本设计特征;事实上,两种接口都基于 X/Open SQL CLI(调用级接口)。它们之间最大的区别在于:JDBC 以 Java 风格与优点为基础并进行优化,因此更加易于使用。
Microsoft 新引进了 ODBC 之外的新 API(如:RDO、 ADO 和OLE DB等)。这些设计在许多方面与 JDBC 是相同的,即它们都是面向对象的数据库接口且基于可在 ODBC 上实现的类。但在这些接口中,我们未看见有特别的功能使我们要转而选择它们来替代 ODBC,尤其是在 ODBC 驱动程序已建立起较为完善的市场的情况下。它们最多也就是在 ODBC 上加了一种装饰而已。 JDBC API 既支持数据库访问的两层模型(C/S),同时也支持三层模型(B/S)。在两层模型中,Java applet或应用程序将直接与数据库进行对话。这将需要一个JDBC驱动程序来与所访问的特定数据库管理系统进行通讯。用户的SQL语句被送往数据库中,而其结果将被送回给用户。数据库可以位于另一台计算机上,用户通过网络连接到上面。这就叫做客户机/服务器配置,其中用户的计算机为客户机,提供数据库的计算机为服务器。网络可以是 Intranet(它可将公司职员连接起来),也可以是 Internet。
在三层模型中,命令先是被发送到服务的中间层,然后由它将SQL 语句发送给数据库。数据库对 SQL 语句进行处理并将结果送回到中间层,中间层再将结果送回给用户。MIS 主管们都发现三层模型很吸引人,因为可用中间层来控制对公司数据的访问和可作的的更新的种类。中间层的另一个好处是,用户可以利用易于使用的高级API,而中间层将把它转换为相应的低级调用。最后,许多情况下三层结构可提供一些性能上的好处。
中间层通常都用 C 或 C++ 这类语言来编写,这些语言执行速度较快。然而,随着最优化编译器(它把 Java字节代码转换为高效的特定于机器的代码)的引入,用 Java 来实现中间层将变得越来越实际。这将是一个很大的进步,它使人们可以充分利用 Java 的诸多优点(如坚固、多线程和安全等特征)。JDBC 对于从Java的中间层来访问数据库非常重要。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
中考,安徽省定远一中达标分数线,求真实 我女朋友要过生日了,她让我送她酸奶,另外让我每天为她叠一个飞机,等... dye one's hair blue和 color on'e hair blue有什么区别? 1=1,2+3+4=9,3+4+5+6+7=25,4+5+6+7+8+9+10=49…照此规律,第n个等式为... 观察下列等式, 1=1 2+3+4=9 3+4+5+6+7=25 4+5+6+7+8+9+10=49 按照此... 1=1 2+3+4=9 3+4+5+6+7=25 4+5+6+7+8+9+10=49 照此规律, 观察下列等式1=12+3+4=93+4+5+6+7=254+5+6+7+8+9+10=49照此规律,第五... ...3+4=93+4+5+6+7=254+5+6+7+8+9+10=49……照此规律,第 个等式为... ...关于EXCEL中输入3-4就会自动生成年月日,怎么不让它自动生成啊_百度... 我的excel自动生成日期 我输入数字就自动成为日期 如何取消呢_百度知 ... 顺德长鹿旅动物园门票三大一小多少钱 就今年的永川动物园好玩吗,还有旁边的乐和乐都主题公园现在建好了吗,这两处现在好玩吗 谁记得海南电视台嘟噜岛节目的小主持人? 八字励志格言? 显示不出来怎么办? 青春奋斗梦想励志八字句子 四字成语,越多越好,最常见的那种 请教最全的孕期检查项目 名言警句(8个字)最好一两百个 花甲为什么会吐沙 对联欣赏 1,过而能改 可以从唐筛结果看男女吗?怀孕14周了,产检的时候医生说做唐筛。 企业八个字激励短句 怀孕14周时做NT检查发现胎盘低置,我该怎么办? 档案专业学术理论水利内容包括哪些 动物园大亨和过山车大亨和主题公园哪个好 5个字励志语录 怀孕14周,做的无创DNA产检,结果前三项低风险,但第二页提示,性染色 喜欢吃花甲,但是好多沙怎么办 永川公交203和501到的那个动物园站,是不是就是乐和乐都主题公园? 南宁加勒比水世界门票是多少?有学生票吗?如果动物园 和什么主题公园一起去要多少钱呢? 先科扫地机充电接口在哪 dn620621 bfd ws q的扫地机怎么充电 国债逆回购一直未成交怎么办 Vacuum+Cleaner扫地机怎么充电? 国债逆回购未成交怎么办 健康加扫地机充电孔多大 国债逆回购没成交怎么办 科沃斯扫地机怎么充电 国债逆回购未成交能在撤单重新挂单吗 扫地机家用·科沃斯怎样充电 最近扫地机一直找不到充电座呢,怎么办 周五卖的国债逆回购没成交收盘资金怎么不到帐 怎么给扫地机器人充电?需要手动帮忙吗? 悠酷智能扫地机怎么充电? 周五卖的国债逆回购收盘没成交资金怎么不到帐 扫扫地机器人电池冲不进去电了怎么办 小米扫地机怎么充电 股票委托未成交的钱,当天收盘后还能买国债逆回购吗? 机器人扫地机怎么充电?