HttpServlet的作用是:
根据客户发出的HTTP请求,生成响应的HTTP响应结果。HttpServlet首先必须读取HTTP请求的内容。Servlet容器负责创建HttpRequest对象,并把HTTP请求信息封装到HttpRequest对
象中,这大大简化了HttpServlet解析请求数据的工作量。
如果没有HttpServletRequest,HttpServlet只能直接处理Web客户发出的原始的字符串数据,有了HttpRequest后,只要调用HttpServletRequest的相关方法,就可以方便地读取
HTTP请求中任何部分信息,HttpServletRequest中读取HTTP请求信息的常用方法如下:
getCookies() 返回HTTP请求的Cookies
getHeader(String name) 返回参数指定的HTTP请求的Header数据
getRequestURI() 返回HTTP请求URI
getQueryString() 返回HTTP请求数据中的查询字符串
getMethod() 返回HTTP请求方法。
Servlet容器向HttpServlet提供了HttpServletResponse对象,HttpServlet可以通过它来生成HTTP响应的没一个部分内容。HttpServletResponse提供的生成响应数据Header的方法
如下:
addCookie(Cookie cookie) 向HTTP响应中加入Cookie
setHeader(String name,String value) 设置HTTP响应的Header,如果参数name对应的Header已经存在,则覆盖原来的Header数据
addHeader(String name,String value) 向HTTP响应加入Header.
HttpServlet的service方法
Servlet容器调用自身的方法解析HTTP请求信息。
1:Web客户向Servlet容器发出HTTP请求;
2:Servlet容器解析Web客户的HTTP请求;
3:Servlet容器创建一个HttpRequest对象,在这个对象中封装了HTTP请求信息;
4:Servlet容器创建一个HttpResponse对象;
5:Servlet容器调用HttpServlet的service方法,把HttpRequest和HttpResponse对象作为service方法的参数传给HttpServlet对象;
6:HttpServlet调用HttpRequest的有关方法,获取HTTP请求信息;
7:HttpServlet调用HttpResponse的有关方法,生成响应数据;
8:Servlet容器把HttpServlet的响应结果传给Web客户。