仓酷云

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

[学习教程] JAVA网页编程之JSP进修――周全剖析JDBC(3)

[复制链接]
谁可相欹 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:23:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
java是一种面向对象的编程语言,优点是可移植性比较高,最初设计时就是本着一次编写到处执行设计的。可以开发各种应用程序和游戏,不过速度没有c++快,所以一般是不用java来编写应用程序和电脑游戏。jsJDBC驱动办理内情是怎样的?

  DriverManager类是JDBC的办理层,感化于用户和驱动程序之间。它跟踪可用的驱动程序,并在数据库和响应驱动程序之间创建毗连。别的,DriverManager类也处置诸如驱动程序登录工夫限定及登录和跟踪动静的显现等事件。

  关于复杂的使用程序,一样平常程序员必要在此类中间接利用的独一办法是DriverManager.getConnection。正如称号所示,该办法将创建与数据库的毗连。JDBC同意用户挪用DriverManager的办法getDriver、getDrivers和registerDriver及Driver的办法connect。但多半情形下,让DriverManager类办理创建毗连的细节为下策。

  1.跟踪可用驱动程序

  DriverManager类包括一列Driver类,它们已经由过程挪用办法DriverManager.registerDriver对本人举行了注册。一切Driver类都必需包括有一个静态部分。它创立该类的实例,然后在加载该实例时DriverManager类举行注册。如许,用户一般情形下将不会间接挪用DriverManager.registerDriver;而是在加载驱动程序时由驱动程序主动挪用。加载Driver类,然后主动在DriverManager中注册的体例有两种:

  (1)挪用办法Class.forName

  这将显式地加载驱动程序类。因为这与内部设置有关,因而保举利用这类加载驱动程序的办法。以下代码加载类acme.db.Driver:Class.forName("acme.db.Driver")。

  假如将acme.db.Driver编写为加载时创立实例,并挪用以该实例为参数的DriverManager.registerDriver(本该云云),则它在DriverManager的驱动程序列表中,并可用于创立毗连。

  (2)将驱动程序增加到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");



如果你学习的是市场营销,是销售,也许参加大课堂的学习会更合适,因为你的工作能力中有个基础就是搭建自己的人脉,
灵魂腐蚀 该用户已被删除
沙发
发表于 2015-1-20 23:09:05 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
飘飘悠悠 该用户已被删除
板凳
发表于 2015-1-25 15:53:35 | 只看该作者
还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。
活着的死人 该用户已被删除
地板
发表于 2015-2-2 22:40:27 | 只看该作者
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
精灵巫婆 该用户已被删除
5#
发表于 2015-2-8 19:11:02 | 只看该作者
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
谁可相欹 该用户已被删除
6#
 楼主| 发表于 2015-2-20 14:35:58 | 只看该作者
那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧!
冷月葬花魂 该用户已被删除
7#
发表于 2015-2-26 18:27:04 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
再见西城 该用户已被删除
8#
发表于 2015-2-27 06:28:09 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
第二个灵魂 该用户已被删除
9#
发表于 2015-3-4 14:44:48 | 只看该作者
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
老尸 该用户已被删除
10#
发表于 2015-3-19 11:03:23 | 只看该作者
所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。
11#
发表于 2015-3-27 19:09:49 | 只看该作者
是一种将安全性(Security)列为第一优先考虑的语言
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-11-15 15:15

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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