servlet复习(二)HTTP Servlet API

来源:互联网 发布:linux和windows的优劣 编辑:程序博客网 时间:2024/04/30 12:08

所属的包:javax.servlet.http(当中很多类型覆盖了javax.servlet中的类型)

覆盖关系:


HttpServlet类:

有两个service方法,一个是覆盖GenericServlet的,一个是新的:protected void service(HttpServletRequest request,HttpServletResponse response) throws ServletException,java.io.IOException。

当容器调用HttpServlet时候会先用第一个覆盖的service方法,把代表请求的ServletRequst向下转化为HttpServletRequest(响应同理),再然后调用第二个新的的service方法,

参数为HttpServletRequest,HttpServletResponse,之后HttpSevlet的新service方法会分别查看用来发送请求的http方法(request.getMethod),(新service方法)调用doGet,doPost(对应于HTTP POST方法,也就是表单的的post),doHead,doPut,doTrace,doOptions,doDelete中之一,其中doGet,doGet最常用,所以直接覆盖doPost,doGet或者都覆盖即可。

所以他和GenericServlet的区别在于:不用覆盖service方法,直接覆盖doPost,doGet或者都覆盖,HttpServletRequest,HttpServletResponse代替ServletRequest,ServletResponse。


HttpServletRequest接口:

表示Http环境的请求,相对于ServletRequest接口增加了几个方法。

常用:getCookies() , getSession()返回与这个请求有关的HttpSession类型的session如果没有据创建新的。

HttpServletResponse接口:

addCookie(Cookie cookie)给响应对象添加cookie,sendRedirect(String location)将浏览器重定向到location。


0 0