GenericServlet:该抽象类实现了Servlet、ServletConfig、Serializable接口,使得开发更加简洁,只需要实现service(pa,pb)抽象方法就好
HttpServlet:继承自GenericServlet,针对于HTTP请求协议所定制
优点:1.直接有针对性的覆盖doXxx方法
2.直接使用HttpServletRequest和HttpServletResponse,不再需要强转
结构HTTPServletRequest
1.获取请求行相关信息(包括请求方式、资源路径、HTTP协议版本:GET /lampbrother/servlet/RequestURI?param1=a¶m2=b HTTP/1.1)
getMethod:返回HTTP请求消息中的请求方式。
getRequestURI:返回请求行中的资源名部分。(URL = IP + 端口 + URI)
getQueryString :返回请求行中的参数部分。(就是URL?后面的那一部分,所以POST请求方式值是null)
getProtocol:返回请求行中的协议名和版本。
getContextPath:返回请求资源所属于的WEB应用程序的路径。
getPathInfo:返回请求URL中的额外路径信息。额外路径信息是请求URL中的位于Servlet的路径之后和查询参数之前的内容,它以“/”开头。
getPathTranslated:返回URL中的额外路径信息所对应的资源的真实路径。
getServletPath方法:Servlet的名称或Servlet所映射的路径。(即xml中servlet-name)
2.获取网络连接信息
getRemoteAddr方法返回发出请求的客户机的IP地址,其格式为“192.168.0.3”这种形式的字符文本。 (*)
getRemoteHost方法返回发出请求的客户机的完整主机名,即“pc1.atguigu.com”这种格式。
getRemotePort方法返回发出请求的客户机所使用的网络接口的端口号。
getLocalAddr方法返回WEB服务器上接收当前请求的网络接口的IP地址。
getLocalName方法返回WEB服务器上接收当前请求的网络接口的IP地址所对应的主机名。
getLocalPort方法返回WEB服务器上接收当前请求的网络接口的端口号。
getServerName方法返回当前请求所指向的主机名。
getServerPort方法返回当前请求所连接的服务器端口号。
getScheme方法返回请求的协议名,例如http、https或ftp。
getRequestURL方法返回客户端发出请求时的完整URL。
3.获取请求头信息
getHeader方法
getHeaders方法
getHeaderNames方法
getIntHeader方法
getDateHeader方法
getContentType方法
getContentLength方法
getCharacterEncoding方法
4.请求域属性(存储在ServletRequest对象中的对象称之为请求域属性,属于同一个请求的多个处理模块之间可以通过请求域属性来传递对象数据)
setAttribute方法
getAttribute方法
removeAttribute方法
getAttributeNames方法
网友评论