• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: 小 中 大 | 推荐给好友 上一篇 | 下一篇

Servlet 技术

发布: 2007-7-04 13:34 | 作者: admin | 来源:  网友评论 | 查看: 12次 | 进入软件测试论坛讨论

领测软件测试网

Servlet是用Java编写的服务器端程序,由服务器端调用和执行的任何Java类。
Servlet是使用Java Servlet应用程序设计接口(API)及相关类和方法的Java程序。
浏览器端也就是客户端运行的Java程序叫做Applet,而服务器端运行的Java程序叫做Servlet。

二、Servlet的主要功能

Servlet的主要功能在于交互式地浏览和修改数据生成动态Web内容。过程为:
1、客户端发送请求至服务器端。
2、服务器将请求信息发送至Servlet。
3、Servlet生成响应内容并将其传给Server。
4、服务器将响应返回给客户端。

三、Servlet可以完成和CGI相同的功能

Servlet提供了Java应用程序的所有优势:——可移植、稳健、易开发。
1、Servlet主要优势在于:一个Servlet被客户端发送的第一个请求激活,然后继续运行于后台,等待以后请求。每个请求将生成一个线程,而不是一个完成的进程。多个客户能够在同一个进程中同时得到服务。一般,Servlet进程只是在Web Server卸载时被卸。
2、Servlet与CGI的比较:
◆Java Servlet技术要比传统的CGI技术效率更高。
传统的CGI对每一个HTTP请求都要产生一个新的进程;而对Java Servlet来说,在Java虚拟机上,每一个请求由一个Java线程thread响应,而不是一个操作系统进程。
◆Java Servlet技术要比传统的CGI技术功能强大。
Java Servlet能够方便的处理HTML表单数据,也能够读取和设置HTTP头信息,并且能够处理Cookies、跟踪Sessions等其他大量功能。
◆Servlet是模块化的。
每一个Servlet可以执行一个特定任务,并且可以将他们并在一起工作。
◆Java Servlet之间能共享数据。
它能方便地实现管理从Request到Request的请求,简化Session和获取前一页面。
◆Java Servlet技术要比传统的CGI技术调用时间要短得多。
CGI程序是作为单独过程运行的,通常调用时间较长;而内存中的Servlet可以非常迅速地加载。
◆Java Servlet技术要比传统的CGI技术安全。
Java定义有完整的安全机制,包括SSI,CA认证、安全政策等规范。
◆Java Servlet技术具有Java技术的所有优点。
Servlet是用Java编写的,Servlet具有Java技术的几乎所有的优点,如可移植性、稳健性以及易开发、易维护等特性。

四、Servlet与JSP之间的关系

1、JSP技术主要用来表现页面,而Servlet技术主要用来完成大量的逻辑处理。
2、JSP主要用来发送给前端的用户,而Servlet主要来响应用户的请求,完成请求的逻辑处理。
◆在实际开发中,往往先把JSP页面开发出来,然后再将JSP代码转换成Servlet。
好处:充分利用JSP的页面表现能力,避免Servlet页面表现方面严重不足,大大缩短开发周期。

五、Servlet应用范围

Servlet应用范围:
◆处理HTTP请求。
◆用于处理HTML表单。
◆允许人们之间的合作。
◆转送请求。
◆允许定义激活代理。

六、Servlet的生命周期

Servlet的生命周期可以归纳为以下几点:
◆装载Servlet:一般动态执行(可以在启动时自动装载)
◆创建一个Servlet实例。
◆调用Servlet的init()方法。
◆一个客户端的请求到达服务器。
◆创建一个请求对象。
◆创建一个响应对象。
◆激活Servlet的Service()方法,并传递请求和响应对象。
◆Service()方法获得关于请求对象的信息、处理请求、访问其他资源、获得需要的信息。
◆Service()方法使用响应对象的方法,将响应传回服务器,最终到达客户端。
◆对于更多的客户端请求,服务器创建新的请求和响应对象,仍然激活此Servlet的Service()方法,将两个对象作为参数传递给它。
◆当服务器不再需要Servlet或当服务器关闭时,服务器将会调用Servlet的destroy()方法。

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:[email protected] 电话:010-51297073

软件测试 | 领测国际 | ISTQB | ISTQB官网 | TMMi | TMMi认证 | 国际软件测试工程师认证 | 领测软件测试网