十、Servlet、HttpServlet、ServletRequest、HttpServletRequest、Request的联系和区别

1、注意servlet的参数设置和路径跳转问题。

2、servlet理论上可以处理多种形式的请求响应形式,http只是其中之一。所以HttpServletRequest、HttpServletResponse分别是ServletRequest和ServletResponse的子类。

3、HttpServletRequest比ServletRequest多了一些针对于Http协议的方法。如getHeader(),getSession()、getMethod()等。

4、所谓的request其实只是规范中的一个名称而已。它当然是一个对象,但它是由各个不同的Servlet提供商编写的,只是规定这个类要实现HttpServletRequest接口,并且规定了各个方法的用途,但具体是什么类是由各个提供商自己决定的。


5、Servlet框架:这个框架是由两个Java包组成:java.servlet和javax.servlet.http。在java.servlet包中定义了所有的Servlet类都必须实现或扩展的通用接口和类。在javax.servlet.http包中定义了采用HTTP通信协议的HttpServlet类。

6、Servlet的框架的核心是javax.servlet.Servlet接口,所有的Servlet都必须实现这一接口.在Servlet接口中定义了5个方法,其中有3个方法代表了Servlet的声明周期:
init方法,负责初始化Servlet对象
service方法,负责相应客户的请求
destory方法,当Servlet对象退出声明周期时,负责释放占有的资源

7、 Servlet接口SUN公司定义了两个默认实现类,分别为:GenericServlet、HttpServlet。HttpServlet是GenericServlet的子类,又是在GenericServlet的基础上做了增强。

8、HttpServlet指能够处理HTTP请求的servlet,它在原有Servlet接口上添加了一些与HTTP协议处理方法,它比Servlet接口的功能更为强大。因此开发人员在编写Servlet时,通常应继承这个类,而避免直接去实现Servlet接口。

9、HttpServlet在实现Servlet接口时,覆写了service方法,该方法体内的代码会自动判断用户的请求方式,如为GET请求,则调用HttpServlet的doGet方法,如为Post请求,则调用doPost方法。因此,开发人员在编写Servlet时,通常只需要覆写doGet或doPost方法,而不要去覆写service方法。

10、
接口:Servlet、ServletConfig、ServletRequest、ServletResponse、HttpServletRequest、HttpServletResponse、ServletContext
类:HttpServlet(抽象类)、GenericServlet(抽象类)

image.png

你可能感兴趣的:(十、Servlet、HttpServlet、ServletRequest、HttpServletRequest、Request的联系和区别)