servlet、genericservlet、httpservlet之间的区别(转)

当编写一个servlet时,必须直接或间接实现servlet接口,最可能实现的方法就是扩展javax.servlet.genericservlet或javax.servlet.http.httpservlet当实现javax.servlet.servlet接口时必须实现5个方法

init(servletconfig   config)    service(servletrequest   req,servletresponse   resp)    destroy()    getservletconfig()    getservletinfo()

service是执行应用逻辑的入口点,包容器调用此方法来响应进来得请求,只是在servlet被成功初始化后才能调用它     其实servlet和applet差不多,当一个servlet被实例化后,包容器自动去调用固定的方法首先是init(),然后是service().....

genericservlet类提供了servlet接口的基本实现,所以他的子类都必须实现service()方法    httpservlet类扩展了genericservlet并且提供了servlet接口中具体于http的实现,它更象一个其他所有的servlet都要扩展的类,其中他定义了两种形式的service方法:

service(servirequest req,servletresponse resp)     此方法是genericservlet的service()方法的实现,他把resquest,response对象分别转化为httpservletrequest和httpservletresponse并且调用下面重载的service()方法,所以不应当重载上面的service()方法:

protect void service(httpservirequest req,httpservletresponse resp)     他用http的request,response对象作为参数,并且由上面的方法调用,httpservlet实现这个方法后就成为一个http请求的分发者,他把请求代理给doget(),dopost().....等doxxxx()方法      当包容器为一个servlet收到一个请求时,包容器调用公共的service方法在把参数转换为httpservirequest,httpservletresponse 后,这个公共的方法调用保护的service根据http请求方法的类型,保护的service方法调用doxxxx()方法之一.    doget()方法是当得到一个get类型的请求时调用  dopost()方法是当得到一个post类型的请求时调用  httpservlet是从genericservlet继承而来,因此httpservlet也有init和destroy这两个生命周期函数以及service方法,只是httpservlet还有两个重要的dopost方法和doget方法,并用他们来支持http的post和get方法,就是说如果要支持http的get方法,就要覆盖doget方法,如果要支持http的post方法,就要覆盖dopost方法。而get方法和post方法的主要区别在于:    post方法的数据传递方式比较安全,不会将传递的信息显示在浏览器的网址后,而get方法则会将传递的信息显示在浏览器的网址后,例如用get方法的浏览器网址:http://127.0.0.1:8080/response.jsp?name=myself;而用post方法则为:http://127.0.0.1:8080/response.jsp;这种区别当用在密码传输时就显的更为重要。

原文:http://www.cnblogs.com/linux2009/articles/1693573.html

时间: 2024-10-09 23:29:43

servlet、genericservlet、httpservlet之间的区别(转)的相关文章

servlet与Javabean之间的区别

在JSP中调用JAVA类和使用JavaBean有什么区别? 可以像使用一般的类一样使用JavaBean,Bean只是一种特殊的类.特殊在可以通过<jsp:useBean/>调用JavaBean而其他类,可以和一般java中一样使用.  Bean的参数中还可以指定范围, <jsp:useBean   scope="application"   />该Bean在服务器的JVM中将只有一个实例. Bean是和WebServer相关的,不同的页面可以通过Bean 交互.

web容器 web服务器 servlet/jsp容器 之间的区别和关系是什么?

web容器 web服务器 servlet/jsp容器 之间的区别和关系是什么? 这是我在网上找的一些资料:1. Web浏览器除了可以在本地硬盘上打开网页文档外,还可以使用http网络协议从网络上的Web服务器(也叫www服务器)上获取网页文档的内容. 2. Web浏览器与Web服务器分别代表着TCP网络程序的客户机和服务器. 3. 无论网站规模的大小,最起码的工作就是要在用做Web服务器的计算机上安装某种Web服务器软件.只要在一台计算机上安装了Web服务器软件,从功能上讲,这台计算机就可以成为

Servlet,GenericServlet,httpServlet区别

Servlet接口:定义五个方法,其中包括三个生命周期方法 GenericServlet类:实现了Servlet定义的方法,参与了Servlet的生命周期 HttpServlet类:继承了GenericServlet,无需参与Servlet的生命周期,可以直接调用GenreicServlet的方法,并且还扩展了doGet, doPost, doDelete, doPut, doTrace等方法 使用Servlet的三种方法 Implements Servlet接口:你这个Servlet类会去实现

servlet,RMI,webservice之间的区别

最近项目中有提供或者调用别的接口,在纠结中到底是用servlet还是用webservice,所以上网查看了下他们以及RMI之间的区别,方便加深了解. 首先比较下servlet和webservice下  请求:     servlet:提供了请求/响应模式,是JAVA的一种规范,只能使用于java上,用来替代早期使用的难懂的CGI,是一种无状态的请求响应,客户端访问一个服务器的url,只需要发送简单的httprequest即可. 规定了四个范围:pageContext.request.sessio

[Spring实战系列](19)Servlet不同版本之间的区别

1.   2.3版本 2.3版本 <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" > <web-app> <display-name>Servlet 2.3 Web Application</display-name> &

Servlet Httpservlet Genericservlet 三者之间关系

一.Servlet分析 1.1.Servlet 源码 public abstract interface Servlet { public abstract void init(ServletConfig paramServletConfig) throws ServletException; public abstract ServletConfig getServletConfig(); public abstract void service(ServletRequest paramSer

SERVLET中的doGet与doPost两个方法之间的区别

get和post是http协议的两种方法,另外还有head, delete等 这两种方法有本质的区别,get只有一个流,参数附加在url后,大小个数有严格限制且只能是字符串.post的参数是通过另外的流传递的,不通过url,所以可以很大,也可以传递二进制数据,如文件的上传. 在servlet开发中,以doGet()和doPost()分别处理get和post方法. 首先判断请求时是get还是post,如果是get就调用doGet(), 如果是post就调用doPost().都会执行这个方法. 1.

Servlet简介与Servlet和HttpServlet运行的流程

1.Servlet [1] Servlet简介 > Server + let > 意为:运行在服务器端的小程序. > Servlet实际上就是一个接口. - 狭义上的Servlet,指的就是Servlet接口 - 广义上的我们认为凡是实现Servlet接口的类,我们都称他是一个Servlet ***** > Servlet的作用: 1.接收用户发送的请求 2.调用其他的java程序来处理请求 3.根据处理结果,返回给用户一个页面 > Servlet的HelloWorld 1.

【Servlet】Get与Post区别与范例讲解

林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 一. J2EE WEB应用文件目录结构 Java Web应用由一组静态HTML页.Servlet.JSP和其他相关的class组成,它们一起构成一个大的工程项目.每种组件在Web应用中都有固定的存放目录.Web应用的配置信息存放在web.xml文件中.在发布某些组件(如Servlet)时,必须在web.xml文件中添加相应的配置信息 Java Web应用程序必须使用规范的目录结构 1. 应用