设为首页 加入收藏

TOP

再谈客户端的Java技术
2014-11-23 17:51:40 】 浏览:4595
Tags:客户端 Java 技术

  在过去的几年中,Java 平台技术取得了一些惊人进展。但这项技术在某些方面的广泛应用和它最初的设计目标完全不同。Java 平台技术最初是希望通过客户端运行 Applet 和 application,来给网页增加交互性。而现在该技术最常见的用途却是基于服务器的 J2EE 系统。为了让 Java 平台在客户端发挥它的最大潜力,人们开发了许多新技术。由于企业系统逐渐被互联网应用程序所取代,掌握这些新技术也就非常必要。在这篇文章中,你可以看到如何利用新旧技术来达到此目的。


  Applet 遇到什么问题?


  当 Java 平台首次发布的时候,就预示着一种新方法,能够将互联网从静态的简单网页集合,提升到具有交互性的高级层次。Java 创始者的最初目的是为开发者们提供一些方法,创建可以在任何客户端机器上运行的小程序。这些程序还能够将客户端进程与服务端数据相结合,给客户提供高度的交互体验。


  然而在某些地方,Java 为客户端所承诺的许多特性得不到实现。导致这个不幸的可能原因包括以下几种:


  公司防火墙通常阻止 Java Applet 的通过。


  许多客户端没有提供完全兼容的 Java 虚拟机。


  安全设置不允许使用 Applet 来执行很多有用的规则。


  浏览页面时,下载一个完整用户界面所需的开销,常常令许多用户对 Java Applet 望而却步。


  必须为不同系统以及不同的平台,重新实现许多用户界面函数(打印,文件管理和其他一些类似任务)。这也是许多开发人员避免使用 Java Applet 的原因。


  随着互联网上电子商务的成长,终端用户的处理能力有所增加,对通讯带宽的需求更是迅猛增长。在客户端组件中使用 Java 技术再度成为一件很有诱惑力的事情。然而,我们需要研究一种新方法,既能够利用客户端的程序,又不必遇到类似于使用 Java Applet 制作 ad-ware 和滚动新闻栏时所面临的障碍。通过新旧技术的结合使用,甚至融合某些几乎被快速奔跑的“互联网时代”所淡忘的旧技术,就能够减轻这些问题。


  人们为什么称之为java script


  在客户端使用 Java 技术时,最为忽略的一点便是 Java Applet 和 java script 之间的结合。java script 标准早就为脚本提供了调用 Applet 类的方法,而 Applet 也能够调用脚本的函数。这种结合让我们能够发挥这两种技术的最大长处。我们开发并保持所需要的功能性,而将用户界面的设计交给网页开发人员来处理。此外,利用这种结合,还能够增加用户与服务器的交互程度却留下很少客户端参与的痕迹。


  java script 标准中的 LiveConnect 技术(参看资料部分),允许在网页中使用脚本来调用 Applet 方法。只要简单地创建所需要的 Java 类,并允许 java script 脚本的开发者访问这个类中的方法便可。而 com.netscape.JSObject 类则使我们能够访问 java script 函数和对象。这就提供了一种在 Java 代码中调用 java script 函数的方式,直接令网页发生相当有趣和重要的变化。有了 java script 和 Java Applet 之间的联系,那些 java script 或 Java Applet 无法单独执行,但结合这二种方法却能完成的任务就能够被解决。而且,此二者的结合通常还能够减少网页提交到服务器的时间,从而减少了用户等待时间,服务器处理时间以及服务端的会话状态维护开销。考虑下列例子:


  在用户填表的同时,后台线程使用 Java Applet 来在服务端数据库中寻找地址或电话号码信息。


  当 SSL 不适合使用时,利用 PKI 技术来为系统间的通讯加密。


  使用 DSA 标准来对请求签名,为消息内容和发送者提供强大的确认功能。


  使用 Java Applet 向服务器数据库提交日程改变,并在客户端的背景上更新本地日程显示。不需要不断对所有日程做更新,并且最大程度地缩短这个改动生效所需的时间。


  结合使用 Java Applet 和 java script 代码进行动态显示,不断更新浏览器文档中的内容;这种结合允许我们不必为每个所想象得到的客户端平台都写一段打印例程,也能够将内容打印出来。


  清单 1 阐述如何使用 JSObject 和 LiveConnect 来验证一个电话号码,同时将该号码转化成标准格式。注意到这只是一个例子代码,所以我在服务器连接方法中略去若干必须的函数调用,以便简化这个清单。这个例子是当电话号码输入框内容发生变化时,在 java script 中调用 Java Applet 函数。于是 Java Applet 就访问服务器,获得这个电话号码的标准格式字符串,并将该字符串返回到隐藏框(hidden field)里。真正实现此任务的代码,应该用后台线程来实现服务器连接和电话号码验证,以便让验证过程对用户而言是透明的。这个例子还使用了另一项使客户端 Java 编程更为有趣的技术:HTTP 连接以及与服务器代码(特别是 Servlet 和 JSP 网页)的结合。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇构造方法的初始化顺序 下一篇基础篇:Java语言的基本组成

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目