ServletRequest与HttpServletRequest
ServletRequest
解析:代表来自客户端的请求。当Servlet容器接收到客户端的要求访问特定Servlet的请求时,容器先解析客户端的原始请求数据,把它包装成一个ServletRequest对象。
常用方法:
1、getContentLength() 请求正文的长度(大小),如果未知返回-1
2、getContentType() 请求正文的MIME类型,比如一般post请求是:application/json
3、getLocalAddr() 服务器本机IP地址,注意是ipv6格式
4、getLocalName() 服务端主机名,注意是主机名,不是主机IP,比如我从本地起服务,localName即localhost
5、getRemoteAddr() 远程IP地址
备注:这里返回的是ipv6,因为我测试用的是本机,地址为0:0:0:0:0:0:0:1,转换为ipv4即127.0.0.1
6、getProtocol() 获取协议及版本号
7、getParameter 获取从Web客户端传到Web服务器端的数据,通常是从Web客户端的Form表单中获取
8、getReader() 获取输入字符流(只能获取一次)
9、getInputStream() 获取输入字节流(只能获取一次)
8、getAttribute()与setAttribute() 两者传递的数据只会存在于Web容器内部,在具有转发关系的Web组件之间传递。传递的数据可以是任何Object 子类的实例。
——————————————————————————————————————————————-
HttpServletRequest
解析:继承自ServletRequest
常用方法:
1、getQueryString() 地址URL里?后面的部分
2、getRequestURI()
3、getRequestURL() 完整地址(不包括?)