ServletRequest为什么可以强转HttpServletRequest

代码中常见这样的代码:

HttpServletRequest httpRequest = (HttpServletRequest) servletRequest

String usertoken = httpRequest.getHeader("usertoken");
String url = httpRequest.getRequestURI().substring(httpRequest.getContextPath().length());

转换原因

HttpServletRequest和ServletRequest都是接口

HttpServletRequest继承自ServletRequest

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

1. 获得客户机信息
    getRequestURL方法返回客户端发出请求时的完整URL。
    getRequestURI方法返回请求行中的资源名部分。
    getQueryString 方法返回请求行中的参数部分。
    getRemoteAddr方法返回发出请求的客户机的IP地址
    getRemoteHost方法返回发出请求的客户机的完整主机名
    getRemotePort方法返回客户机所使用的网络端口号
    getLocalAddr方法返回WEB服务器的IP地址。
    getLocalName方法返回WEB服务器的主机名
    getMethod得到客户机请求方式
 2.获得客户机请求头
    getHeader(string name)方法
    getHeaders(String name)方法
    getHeaderNames方法 

 3. 获得客户机请求参数(客户端提交的数据)
    getParameter(name)方法
    getParameterValues(String name)方法
    getParameterNames方法
    getParameterMap方法
————————————————
版权声明:本文为CSDN博主「javafanwk」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/fwk19840301/article/details/80394392

你可能感兴趣的:(java入门到精通,java)