CGI与Servlet的区别和联系
- 定义:
CGI(Common Gateway Interface 公共网关接口)是HTTP服务器与你的或其它机器上的程序进行“交谈”的一种工具,其程序须运行在网络服务器上。
- 功能:
绝大多数的CGI程序被用来解释处理杰自表单的输入信息,并在服 务器产生相应的处理,或将相应的信息反馈给浏览器。CGI程序使 网页具有交互功能。
- 运行环境:
CGI程序在UNIX操作系统上CERN或NCSA格式的服务器上运行。 在其它操作系统(如:windows NT及windows95等)的服务器上 也广泛地使用CGI程序,同时它也适用于各种类型机器。
CGI处理步骤:
⑴通过Internet把用户请求送到服务器。
⑵服务器接收用户请求并交给CGI程序处理。
⑶CGI程序把处理结果传送给服务器。
⑷服务器把结果送回到用户。
Servlet是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面。 它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器响应(HTTP服务器上的数据库或应用程序)的中间层。 Servlet是位于Web 服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java应用程序不同,Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的Java虚拟机。
工作模式:客户端发送请求至服务器;服务器启动并调用Servlet,Servlet根据客户端请求生成响应内容并将其传给服务器;服务器将响应返回客户端。
Java Servlet与CGI (Common Gateway Interface 公共网关接口)的比较:
与传统的CGI和许多其他类似CGI的技术相比,Java Servlet具有更高的效率,更容易使用,功能更强大,具有更好的可移植性,更节省投资。在未来的技术发展过程中,Servlet有可能彻底取代CGI。
在传统的CGI中,每个请求都要启动一个新的进程,如果CGI程序本身的执行时间较短,启动进程所需要的开销很可能反而超过实际执行时间。而在Servlet中,每个请求由一个轻量级的Java线程处理(而不是重量级的操作系统进程)。
在传统CGI中,如果有N个并发的对同一CGI程序的请求,则该CGI程序的代码在内存中重复装载了N次;而对于Servlet,处理请求的是N个线程,只需要一份Servlet类代码。在性能优化方面,Servlet也比CGI有着更多的选择。
* 方便
Servlet提供了大量的实用工具例程,例如自动地解析和解码HTML表单数据、读取和设置HTTP头、处理Cookie、跟踪会话状态等。
* 功能强大
在Servlet中,许多使用传统CGI程序很难完成的任务都可以轻松地完成。例如,Servlet能够直接和Web服务器交互,而普通的CGI程序不能。Servlet还能够在各个程序之间共享数据,使得数据库连接池之类的功能很容易实现。
* 可移植性好
Servlet用Java编写,Servlet API具有完善的标准。因此,为IPlanet Enterprise Server写的Servlet无需任何实质上的改动即可移植到Apache、Microsoft IIS或者WebStar。几乎所有的主流服务器都直接或通过插件支持Servlet。
CGI与Servlet的区别和联系相关推荐
- jsp与java的关系_jsp教程中:jsp与servlet的区别和关系
jsp教程上:我们一定学了servlet,也学习了jsp,那么jsp与servlet的区别是什么呢,jsp与servlet又有什么关系呢?下面我们先创建一个demo.jsp的页面,然后tomcat运行 ...
- jsp与servlet的区别与联系
jsp和servlet的区别和联系: 1.jsp经编译后就变成了Servlet. (JSP的本质就是Servlet,JVM只能识别java的类,不能识别JSP的代码,Web容器将JSP的代码编译成JV ...
- JSP和Servlet的区别(servlet生命周期)
在说JSP和servlet的区别先说说servlet(因为JSP在本质上就是Servlet,只是两者的创建方式不一样) Servlet工作原理: 1. 在客户端对web服务器发出请求 2. ...
- JSP和Servlet的区别和联系 JSP 内置对象和作用
JSP和Servlet的区别和联系 1.jsp经编译后就变成了Servlet. (JSP的本质就是Servlet,JVM只能识别java的类,不能识别JSP的代码,Web容器将JSP的代码编译成JVM ...
- jsp和servlet的区别
jsp和servlet的区别 JSP(全称JavaServer Pages)是由Sun Microsystems公司主导创建的一种动态网页技术标准.JSP部署于网络服务器上,可以响应客户端发送的请求, ...
- 详谈jsp和servlet的区别
其实说白了JSP和SERVLET到底什么区别呢,JSP就象宾馆前台的服务员,要长的不错,让顾客一看就觉得比较舒服,他主要就是负责显示这个宾馆的形象的.而SERVLET就象部门经理,要处理各种各样的业务 ...
- Web Service和Servlet的区别
在最开始学习Web Service时候,总觉得Web Service和Servlet没有什么区别,觉得Servlet可以对Http请求进行相应并返回数据,而Web Service只不过是基于SOAP协 ...
- javaBean和Servlet的区别
可以像使用一般的类一样使用JavaBean,Bean只是一种特殊的类.特殊在可以通过<jsp:useBean />调用JavaBean.而其他类,可以和一般java中一样使用. Bea ...
- 简单留言管理平台实现中 包含的 MVC,另:javabean和servlet的区别
首先,JavaBean和Servlet虽都是Java程序,但是是完全不同的两个概念. 引用mz3226960提出的MVC的概念,即M-model-模型:JavaBean:V-view-表现:JSP页面 ...
最新文章
- mssql 查询当前自增序号_查询函数Choose、Lookup、Hlookup、Vlookup应用技巧解读
- 一个当了爹的程序员的自白
- jmeter插件 --PerfMon Metrics Collector监控工具的使用
- C++中的函数指针和函数对象总结
- ubuntu14.04安装dropbox
- java cpu 占用高问题定位
- C语言入门(4)——常量、变量与赋值
- Java中的值类型:为什么它们不可变?
- python之deque
- 快速上手友盟推送前后端
- 程序员必读的入门到大牛高效书单
- cmd命令快速切换电源模式-平衡模式和卓越模式
- Latex写科技论文小技巧--修改稿件
- 已知直线方程,计算直线对应的向量
- 拜登签署芯片法案后,英特尔股票的前景如何?
- 嵌入式程序员应知道的问题
- 怎么通过django模板输出双花括号{{}}
- Netapp 两节点双活VS本地HA
- 使用H5中的表单标签制作一个简单的网页登陆页面
- 电脑英寸,怎么看自己显示器尺寸_怎么查看电脑屏幕多少英寸