仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 729|回复: 13
打印 上一主题 下一主题

[学习教程] 发布一篇Java数据库接口JDBC驱动设置

[复制链接]
只想知道 该用户已被删除
跳转到指定楼层
#
发表于 2015-1-18 11:21:03 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
手机用到的是用j2me所编出来的小程序。
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的驱动程序。
这类办法初看起来效力不高,但因为不成能同时加载数十个驱动程序,因而每次毗连实践只需几个历程挪用和字符串对照。
以下代码是一般情形下用驱动程序(比方JDBC-ODBC桥驱动程序)创建毗连所需一切步骤的示例:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");//加载驱动程序
Stringurl="jdbc:odbc:fred";
DriverManager.getConnection(url,"userID","passwd");

前些天,在CSDN上看到了一个消息,说是net网页编程网页编程AJAX成功在Linux上运行,这一点对我触动很大,而且引发了我许多感叹,所以想写出来分享一下。
不帅 该用户已被删除
13#
发表于 2015-3-20 17:31:01 | 只看该作者
象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。
小魔女 该用户已被删除
12#
发表于 2015-3-13 08:50:06 | 只看该作者
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
第二个灵魂 该用户已被删除
11#
发表于 2015-3-10 17:52:22 | 只看该作者
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
山那边是海 该用户已被删除
10#
发表于 2015-3-6 18:50:50 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
活着的死人 该用户已被删除
9#
发表于 2015-2-17 20:38:13 | 只看该作者
有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
深爱那片海 该用户已被删除
8#
发表于 2015-2-16 23:07:47 | 只看该作者
接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。
飘飘悠悠 该用户已被删除
7#
发表于 2015-2-13 07:51:06 | 只看该作者
是一种语言,用以产生「小应用程序(Applet(s))
若天明 该用户已被删除
6#
发表于 2015-2-12 18:52:18 | 只看该作者
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
爱飞 该用户已被删除
5#
发表于 2015-2-12 10:29:05 | 只看该作者
Jive的资料在很多网站上都有,大家可以找来研究一下。相信你读完代码后,会有脱胎换骨的感觉。遗憾的是Jive从2.5以后就不再无条件的开放源代码,同时有licence限制。不过幸好还有中国一流的Java程序员关注它,外国人不开源了,中国人就不能开源吗?这里向大家推荐一个汉化的Jive版本—J道。Jive(J道版)是由中国Java界大名 鼎鼎的banq在Jive 2.1版本基础上改编而成, 全中文,增加了一些实用功能,如贴图,用户头像和用户资料查询等,而且有一个开发团队在不断升级。你可以访问banq的网站
谁可相欹 该用户已被删除
地板
发表于 2015-2-4 07:09:34 | 只看该作者
是一种使网页(Web Page)产生生动活泼画面的语言
admin 该用户已被删除
板凳
发表于 2015-1-31 15:40:03 | 只看该作者
如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。
冷月葬花魂 该用户已被删除
沙发
发表于 2015-1-29 07:06:11 | 只看该作者
你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。
灵魂腐蚀 该用户已被删除
楼主
发表于 2015-1-20 12:12:29 | 只看该作者
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-16 13:20

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表