动态网站制作指南 [  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教程 ]的信息

本月文章推荐
.如何让JBuilder运行在JDK1.4之上.
.Eclipse 3.1中的Java泛型支持.
.Java中C/S通讯程序设计一例.
.MIDP中尝试粒子系统.
.《java深度历险》读书笔记(一).
.外观设计模式组图(Fa?ade patte.
.Spring与iBATIS的集成.
.Java的网络功能与编程4.
.关于移动百宝箱应用打包问题的解.
.Java RMI 简单示例.
.ChinaITLab的SCJP远程培训内容归.
.写bean类的准则.
.Java 学习集中营 各种问题的分析.
.Eclipse走向MDA,到达Rational A.
.如何安装配置DSML以及创建激活的.
.应用:Tomcat5配置Mysql JDBC数据.
.运用Jakarta Struts的七大实战心.
.结合struts和hibernate谈J2EE架构.
.后向引用.
.无状态Enterprise JavaBeans的观.

企业级应用中的Applet和Servlet的通信

发表日期:2008-1-5 |


    在今天的多层结构的web应用程序的设计中,我们可以同时使用Java applet和Servlet。Applet为建立功能强大的动态界面提供了便利的机制,Servlet为web服务器或者其他应用服务器处理请求提供了高效率的手段。

    Sun公司的应用程序模型描述了在Java2平台下开发企业级的Java应用的最好的规范。一种被推荐的规范是:在前端使用Applet、Html和jsp,在后端使用Enterprise JavaBeans支持的Servlet及其他成分。

    这种体系结构的要害是在客户端的Applet和在服务器说?ervlet之间的通信。但是由于Applet受浏览器安全模式的限制,在一个Applet中存取数据和信息并不想看上去的那么简单。在这篇文章中,我们将解释在Applet-Servlet结构中开发者所面对的限制,并探讨几个不同的可以在Applet和Servlet之间转输数据的通信策略。

    假如你已经熟悉Applet和Servlet,这肯定会对你阅读本文有帮助,假如你还不是那么熟悉,那也没关系,我们会简要地介绍它们。

APPLET和SERVLET的简介

    Applet Java applets实际上是运行在web页面上的Java程序。它是一个继续于java.applet.applet的Java类,它通过引用被嵌入到HTML页面中去,就象一个图像一样。Applet和HTML的组合,可以建立功能更为强大的动态界面。

对于一些只用来滚动正文和播放动画的Applet,我们可以在一个企业级的应用程序中利用它来显示和处理来自服务器上的资源的数据。例如,一个Applet可以用来浏览和修改数据库中的记录或者控制运行在服务器上的其他应用程序。

Java applet除了可以使用它自己定义的类文件外,还可以使用其他的类,不管这些类是独立存在的还是被打包成了一个JAR文件。Applet和它的类文件通过标准的HTTP请求进行分布,所以Applet可以越过web页面数据所在的平台的防火墙进行发送。

除非是涉及到保持应用程序完整性的问题,Applet总会在每次用户重新访问web主机时自动刷新并会在客户端保留一段时间。

我们得感谢Java操作系统的平台无关性,这才使得Applet可以运行在任何拥有Java虚拟机(JVM)的浏览器上。Sun公司的Java插件甚至可以使用可以利用最新版本的JVM编制页面,而不用担心受你的用户的浏览器上的JVM的版本的限制。

因为Applet是Java平台的扩展,所以在你建立用Applet建立你的web应用程序的界面时,你可以重用已存在的Java组件。

正如我们在下面的例子中可以看到的那样,你可以在你的Applet的组件中使用复杂的Java对象来开发本来由服务器端应用程序完成的工作。事实上,你可以编写这样的Java代码,它既可以在Applet上执行,也可以在应用程序内执行。

Applet具有所有传统的Java应用程序的功能,包括使用Sun公司的JFC/Swing组件。Applets也可以用来制作图形以及应用程序中的用户界面(尽管有些辅助的窗口会被标志为“Warning, Java Applet Window”)。

但是不管他们有多么相似,在应用程序和Applet之间还是一些要害性的差别的。例如,我们不得不考虑到我们的Applet是受到安全模式的限制的。

Applet的安全约束

Applet代码来自于web主机并在最终用户的机器的浏览器中运行。有害的含有病毒的Applet可能会造成破坏性的效果,为了防止这样的Applet,Applet受到安全方面的约束,那就是Applet只可以与提供这个Applet的主机进行通信,而且Applet不能操作最终用户的机器。

它们不能读写该用户的文件系统,不能执行上面的程序,也不能检查一些敏感的环境参数。(事实上,我们有一种方法可以回避这种限制,那就是开发者可以利用数字签名的技术对Applet进行标志,这将会询问用户是否可以给予Applet某种非凡的待遇。

但是这已经超出我们这篇文章中所讨论的范围了。)此外,Applet不能建立或接受外来的socket连接。所谓外来的是指这个连接超出了提供这个Applet类文件的主机(不是提供引用这个Applet的HTML所在的主机)。

因为这个安全性的限制,我们与Applet的通信必须采用一种非凡的策略。通信的唯一的途径就是在提供Applet的主机和提供相应的HTML的主机之前的网络连接。

Servlets Java servlet是服务器端的组件,它和CGI有很多相似。它可以处理web请求,并返回数据或HTML。Servlet可以访问数据库,进行计算,并和Enterprise JavaBean这样的组件进行通信。

与CGI程序不同的是,Servlet是持久有效的,也就是说,它只要被示例一次就可以不断地处理请求(这些请求很可能是同时发生的)。因此,Servlet比CGI来得更高效。

Servlet运行在一个Servlet引擎中,通常是在一个web服务器或应用程序服务器上。Netscape Enterprise Server 4.0和Netscape Application Server都支持最新版本的Java servlet规范。

和Applet不同,Servlet不受安全约束的限制。因为Servlet是完全在服务器上运行的,它具有所有操作系统所答应的性能。

Servlet可以用来很方便地建立在Applet和Web浏览器这样的客户端和企业应用程序的核心之间的连接。对于客户端来说,向Servlet发出的请求与其他web请求并没有任何不同。客户端通过一个URL来接受返回的信息,正如我们看到的那样,返回的信息并不一定只能是HTML,实际上我们可以通过HTML协议发送和接受任何类型的数据。


上一篇:J2ME中使用缓存将屏幕内容存储为Image 人气:521
下一篇:理解并解决IE的内存泄漏方式 人气:767
浏览全部Java的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-9-4 LPLY CMS 网站管理系统 v5.0
2008-9-4 缤纷互动视频交友 v3.01.902
2008-9-4 ADN视频收藏专家 v3.0 bulid 080
2008-9-4 天空网络电影系统SKYUC v2.5.6 简
2008-9-4 Web Wiz Rich Text Editor(文本编
2008-9-4 幻影动漫网视频系统(Ppdong) v1.
2008-9-4 乐维电脑在线DIY配置系统
2008-9-4 老樊文章管理系统SQL版
2008-9-4 ASP.NET 2.53 缩略图水印组件源码
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号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵