- 浏览: 2022455 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (795)
- java (263)
- 聚类搜索引擎 (9)
- 经验之谈 (67)
- DSP (3)
- C++ (140)
- Linux (37)
- SNMP (6)
- Python (6)
- 数据库 (61)
- 网络 (20)
- 算法 (15)
- 设计模式 (4)
- 笔试题 (38)
- 散文 (35)
- 数据结构 (9)
- 银行知识 (0)
- 榜样 (9)
- Lucene (15)
- Heritrix (6)
- MetaSeeker (0)
- netbeans (12)
- php (3)
- 英语 (8)
- DB2 (0)
- java基础 (5)
- mongodb & hadoop (4)
- Javascript (7)
- Spring (4)
- ibatis & myibatis (1)
- velocity (1)
- 微服务 (0)
- paddle (1)
- 第三方 (0)
- 知识沉淀 (1)
- 建模 (0)
最新评论
-
0372:
标示对java很陌生!
中文乱码解决的4种方式 -
梦留心痕:
Java中\是转意字符, 可是你的这句话我没看懂,只要把得到的 ...
java中如何忽略字符串中的转义字符--转载 -
yanjianpengit:
[b][/b]
java为什么非静态内部类里面不能有静态成员 -
springdata-jpa:
可以参考最新的文档:如何在eclipse jee中检出项目并转 ...
eclipse 如何把java项目转成web项目 -
qq1130127172:
,非常好。
(转)SpringMVC 基于注解的Controller @RequestMapping @RequestParam..
在今天的多层结构的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协议发送和接受所有类型的数据。
发表评论
-
流式计算
2022-02-07 14:31 243private void postHandle(List& ... -
消息队列使用的四种场景介绍
2018-08-09 16:34 2423以下介绍消息队列在实际应用中常用的使用场 ... -
设计模式
2018-04-11 16:49 9461.桥梁模式,将抽象部分与实现部分隔离开,抽象部分持有实现 ... -
Spring boot web可以访问Service和Mapper层
2018-03-26 16:42 2809Spring boot的web层可以访问Service层,然 ... -
FreeMarker的基础语法使用 && 心得和技巧
2018-01-10 10:03 1952FreeMarker是一个模板引 ... -
webService----wss4j+cxf实现WS-Security(基于UsernameToken)
2017-10-23 18:58 1513分享一下wss4j+cxf基于UsernameToken的安 ... -
Spring MVC之LocaleResolver(解析用户区域)
2017-09-23 15:55 2461为了让web应用程序支持国际化,必须识别每个用户的首选区域, ... -
(转)java泛型
2016-11-12 20:29 1603http://www.cnblogs.com/lwbqqyu ... -
java中如何忽略字符串中的转义字符--转载
2016-06-28 16:42 9821原文地址:http://my ... -
(转)关于JAP FetchType.LAZY(hibernate实现)的理解 .
2016-04-27 15:22 5058JPA定义实体之间的关系有如下几种: @OneToOne ... -
(转)hibernate annotation注解方式来处理映射关系
2016-04-26 16:52 1804http://www.cnblogs.com/xiao ... -
代码片段,导出的文件头
2015-11-18 20:34 1568public static void setDownload ... -
(转)为什么要两次调用encodeURI来解决乱码问题
2015-08-03 20:19 2435地址:http://blog.csdn.net/howla ... -
杀死进程
2015-07-21 14:54 1248sudo lsof -i :9000 COMMAND P ... -
批处理batch,执行多个SQL语句
2015-07-15 19:21 10555批处理batch,执行多个SQL语句。 ... -
中文乱码解决的4种方式
2015-07-03 14:20 2592目前收集到4中方法,中文传参一documentPath为例: ... -
GET请求的中文乱码问题及处理意义
2015-07-03 13:47 6600首先看一段乱码的程序 ... -
java.ByteArrayInputStream与ByteArrayOutputStream再次理解
2015-03-16 17:59 3204第一次看到ByteArrayOutputStream的时 ... -
(转)SpringMVC 基于注解的Controller @RequestMapping @RequestParam..
2014-07-28 17:42 2227概述 继 Spring 2.0 对 Spring MVC ... -
java中序列化的serialVersionUID解释
2014-07-25 09:26 1850serialVersionUID: 字面意思上是序列化的版本号 ...
相关推荐
1. 2 企业级n-层应用 1. 3 典型Web应用程序的处理过程 1. 3. 1 Web浏览器发送请求 1. 3. 2 执行服务器端程序 1. 3. 3 将结果运回给浏览器 1. 4 服务器端技术 1. 4. 1 各种服务器端技术的比较 1. 4. 2 基于...
在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...
application或者applet中与servlet/jsp通信可以采用的方式。 31.简述逻辑操作(如&,|)与条件操作(如&&,||)的区别。 32.简述 Java Server Page 和 Servlet 的联系和区别。 33.简述synchronized和java.util....
jFastCGI 是一个可以让Tomcat 之类的Servlet容器支持运行PHP和其它fastcgi应用程序,将Servlet容器充当成一个FastCGI 的网关。 Java 绘图框架 JGraphEd JGraphEd 是一个 Java 的图形编辑应用和绘图框架。 Java ...
jFastCGI 是一个可以让Tomcat 之类的Servlet容器支持运行PHP和其它fastcgi应用程序,将Servlet容器充当成一个FastCGI 的网关。 Java 绘图框架 JGraphEd JGraphEd 是一个 Java 的图形编辑应用和绘图框架。 Java ...
jFastCGI 是一个可以让Tomcat 之类的Servlet容器支持运行PHP和其它fastcgi应用程序,将Servlet容器充当成一个FastCGI 的网关。 Java 绘图框架 JGraphEd JGraphEd 是一个 Java 的图形编辑应用和绘图框架。 Java ...
jFastCGI 是一个可以让Tomcat 之类的Servlet容器支持运行PHP和其它fastcgi应用程序,将Servlet容器充当成一个FastCGI 的网关。 Java 绘图框架 JGraphEd JGraphEd 是一个 Java 的图形编辑应用和绘图框架。 Java ...
jFastCGI 是一个可以让Tomcat 之类的Servlet容器支持运行PHP和其它fastcgi应用程序,将Servlet容器充当成一个FastCGI 的网关。 Java 绘图框架 JGraphEd JGraphEd 是一个 Java 的图形编辑应用和绘图框架。 Java ...
jFastCGI 是一个可以让Tomcat 之类的Servlet容器支持运行PHP和其它fastcgi应用程序,将Servlet容器充当成一个FastCGI 的网关。 Java 绘图框架 JGraphEd JGraphEd 是一个 Java 的图形编辑应用和绘图框架。 Java ...
jFastCGI 是一个可以让Tomcat 之类的Servlet容器支持运行PHP和其它fastcgi应用程序,将Servlet容器充当成一个FastCGI 的网关。 Java 绘图框架 JGraphEd JGraphEd 是一个 Java 的图形编辑应用和绘图框架。 Java ...
jFastCGI 是一个可以让Tomcat 之类的Servlet容器支持运行PHP和其它fastcgi应用程序,将Servlet容器充当成一个FastCGI 的网关。 Java 绘图框架 JGraphEd JGraphEd 是一个 Java 的图形编辑应用和绘图框架。 Java ...
jFastCGI 是一个可以让Tomcat 之类的Servlet容器支持运行PHP和其它fastcgi应用程序,将Servlet容器充当成一个FastCGI 的网关。 Java 绘图框架 JGraphEd JGraphEd 是一个 Java 的图形编辑应用和绘图框架。 Java ...
jFastCGI 是一个可以让Tomcat 之类的Servlet容器支持运行PHP和其它fastcgi应用程序,将Servlet容器充当成一个FastCGI 的网关。 Java 绘图框架 JGraphEd JGraphEd 是一个 Java 的图形编辑应用和绘图框架。 Java ...
jFastCGI 是一个可以让Tomcat 之类的Servlet容器支持运行PHP和其它fastcgi应用程序,将Servlet容器充当成一个FastCGI 的网关。 Java 绘图框架 JGraphEd JGraphEd 是一个 Java 的图形编辑应用和绘图框架。 Java ...
jFastCGI 是一个可以让Tomcat 之类的Servlet容器支持运行PHP和其它fastcgi应用程序,将Servlet容器充当成一个FastCGI 的网关。 Java 绘图框架 JGraphEd JGraphEd 是一个 Java 的图形编辑应用和绘图框架。 Java ...
jFastCGI 是一个可以让Tomcat 之类的Servlet容器支持运行PHP和其它fastcgi应用程序,将Servlet容器充当成一个FastCGI 的网关。 Java 绘图框架 JGraphEd JGraphEd 是一个 Java 的图形编辑应用和绘图框架。 Java ...
用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天通信演示代码 2个目标文件...
在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...
在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...