动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ Java教程 ]的信息

本月文章推荐
.“快”在细节 J2EE程序的性能优化.
.教您如何成为 EJB 专家详解系列连.
.一个javaBeans的关于RTTI的问题.
.用 正则表达式 判断一个简单的用.
.Struts Web开发框架WebPage3.
.CopyFile 方法.
.从数据库读出的JPG文件的字符流,.
.外观模式(Fa?ade pattern)(1).
.Java正则表达式详解(下).
.Eclipse开发struts完全指南一(全.
.简析JAVA的XML编程(to:初学者们).
.找回丢失的源代码.
.一个用JAVA写的测算服务器响应速.
.怎样处理Java最终化的内存保留问.
.用Java线程获取优异性能(II)??.
.J2ME学习札记3.
.致 java 爱好者(3).
.发掘身份证编号的潜力.
.通过Struts应用MVC设计模型.
.应用Rational工具简化基于J2EE项.

JDBC基础教程之驱动设置

发表日期:2008-1-5 |



  1、概述

  DriverManager 类是 JDBC 的治理层,作用于用户和驱动程序之间。它跟踪可用的驱动程序,并在数据库和相应驱动程序之间建立连接。另外,DriverManager 类也处理诸如驱动程序登录时间限制及登录和跟踪消息的显示等事务。

  对于简单的应用程序,一般程序员需要在此类中直接使用的唯一方法是 DriverManager.getConnection。正如名称所示,该方法将建立与数据库的连接。JDBC 答应用户调用 DriverManager 的方法 getDriver、getDrivers 和 registerDriver 及 Driver 的方法 connect。但多数情况下,让 DriverManager 类治理建立连接的细节为上策。

  1、跟踪可用驱动程序

  DriverManager 类包含一列 Driver 类,它们已通过调用方法 DriverManager.registerDriver 对自己进行了注册。所有 Driver 类都必须包含有一个静态部分。它创建该类的实例,然后在加载该实例时 DriverManager 类进行注册。这样,用户正常情况下将不会直接调用 DriverManager.registerDriver;而是在加载驱动程序时由驱动程序自动调用。加载 Driver 类,然后自动在 DriverManager 中注册的方式有两种:

  通过调用方法 Class.forName。这将显式地加载驱动程序类。由于这与外部设置无关,因此推荐使用这种加载驱动程序的方法。以下代码加载类 acme.db.Driver:

Class.forName("acme.db.Driver");
  假如将 acme.db.Driver 编写为加载时创建实例,并调用以该实例为参数的 DriverManager.registerDriver(本该如此),则它在 DriverManager 的驱动程序列表中,并可用于创建连接。

  通过将驱动程序添加到 Java.lang.System 的属性 jdbc.drivers 中。这是一个由 DriverManager 类加载的驱动程序类名的列表,由冒号分隔:初始化 DriverManager 类时,它搜索系统属性 jdbc.drivers,假如用户已输入了一个或多个驱动程序,则 DriverManager 类将试图加载它们。以下代码说明程序员如何在 ~/.hotjava/properties 中输入三个驱动程序类(启动时,HotJava 将把它加载到系统属性列表中):

jdbc.drivers=foo.bah.Driver:wombat.sql.Driver:bad.test.ourDriver;
  对 DriverManager 方法的第一次调用将自动加载这些驱动程序类。

  注重:加载驱动程序的第二种方法需要持久的预设环境。假如对这一点不能保证,则调用方法 Class.forName 显式地加载每个驱动程序就显得更为安全。这也是引入特定驱动程序的方法,因为一旦 DriverManager 类被初始化,它将不再检查 jdbc.drivers 属性列表。

  在以上两种情况中,新加载的 Driver 类都要通过调用 DriverManager.registerDriver 类进行自我注册。如上所述,加载类时将自动执行这一过程。

  由于安全方面的原因,JDBC 治理层将跟踪哪个类加载器提供哪个驱动程序。这样,当 DriverManager 类打开连接时,它仅使用本地文件系统或与发出连接请求的代码相同的类加载器提供的驱动程序。

  2、建立连接

  加载 Driver 类并在 DriverManager 类中注册后,它们即可用来与数据库建立连接。当调用 DriverManager.getConnection 方法发出连接请求时,DriverManager 将检查每个驱动程序,查看它是否可以建立连接。

  有时可能有多个 JDBC 驱动程序可以与给定的 URL 连接。例如,与给定远程数据库连接时,可以使用 JDBC-ODBC 桥驱动程序、JDBC 到通用网络协议驱动程序或数据库厂商提供的驱动程序。在这种情况下,测试驱动程序的顺序至关重要,因为 DriverManager 将使用它所找到的第一个可以成功连接到给定 URL 的驱动程序。

  首先 DriverManager 试图按注册的顺序使用每个驱动程序(jdbc.drivers 中列出的驱动程序总是先注册)。它将跳过代码不可信任的驱动程序,除非加载它们的源与试图打开连接的代码的源相同。

  它通过轮流在每个驱动程序上调用方法 Driver.connect,并向它们传递用户开始传递给方法 DriverManager.getConnection 的 URL 来对驱动程序进行测试,然后连接第一个认出该 URL 的驱动程序。

  这种方法初看起来效率不高,但由于不可能同时加载数十个驱动程序,因此每次连接实际只需几个过程调用和字符串比较。

上一篇:JBuilder2005实现重构之重构前的侦察 人气:275
下一篇:Servlets:服务器端处理的极好选择 人气:291
浏览全部Java的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-9-5 Coppermine Photo Gallery v1.4.
2008-9-5 清松网络日记本 v2.4
2008-9-5 AyWeb企业网站管理系统 v2.3 bui
2008-9-5 美女写真小偷程序联盟 v3.0 buil
2008-9-5 老Y文章管理系统 v2.1
2008-9-5 SiteDynamic企业网站管理系统 v1
2008-9-5 MyCOM企业网站管理系统 v1.0 Bui
2008-9-5 乐风CMS影视版 2008
2008-9-5 幻影电影视频系统TvsCms v1.3 伪
2008-8-23 Mini WinMount V0.4
2008-8-23 Vista优化大师3.11正式版
2008-8-23 Wine 1.13
2008-8-23 KlipFolio 5.0 Build 5899-80
2008-8-23 Windows Sysinternals Desktops
2008-8-23 OneTap Movies1.2破解版
2008-8-23 AnnotaterPDF阅读1.1.503 破解版
2008-8-23 SoundMeter分贝测量仪 v1.0汉化破
2008-8-23 iDrum音乐节拍1.0破解版
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | 广告代码 | Html转换js | js/vbs加密 | md5加密 | 进制转换
实用工具:汉字翻译拼音 | 符号对照表 | 个税计算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 国家代码与域名缩写 | 文字加密解密 | 健康查询 | 万年历 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵