本文已参与「新人创作礼」活动,一起开启掘金创作之路。
文章目录
request对象
**在回忆request对象之前,我要先想想get与post两种提交方式的差别
**
get是明文提交,安全性低,数据量小,速度快,适合查询,审核等功能,不能用做登录,注册等功能,因为很容易泄露密码等信息。
而post是将信息封装到HTML HEADER中,安全性高,数据量大,适合注册,修改等功能。
然后再想想请求重定向与请求转发
请求重定向response.sendRediRect()是客户端行为,本质上是两次请求,前一次请求对象不会保存,且URL地址会改变
请求转发request.getRequestDispatcher().forward(respose, request)是服务器行为,保存前一次请求对象,并且URL地址不会改变。
打一个生活中的例子,你到一个公司去办业余,然后公司说这不归他们管,要你到某某地方去,然后你就去了,这就相当于请求重定向,而假如公司说,请等一会,我们去问问,然后公司帮你去某某地方查询办业务,而你在这个公司里面等,这就好比请求转发。不得不说,这太形象了,哈哈.
然后再回头来说requset对象
request对象封装客户端向服务端发送的一次请求,服务端通过它才能了解到客户的需求,然后做出响应。
常用方法
String getParameter(String name)返回name指定参数的参数值
String getParameterValues(String name)返回包含参数的所有值的数组
void setAttribute(String , Object);存储此请求中的属性
object getAttribute(String name)返回此属性对应的属性值
String getContentType()得到请求体的MIME类型
String getProtocol()返回请求用的协议类型及版本号
String getServerName()返回接受请求的服务器主机名
int getServerPort()返回服务器接受此请求的端口号
String getCharacterEncoding()返回字符编码方式
void setCharacterEncoding()设置请求的字符编码方式
int getContentLength()返回请求体的长度(字节数)
String getRemoteAddr()返回发送此请求的客户端的ip地址
String getRealPath(String path)返回一虚拟路径的真实路径
String request.getContextPath()返回上下文路径
以上是request对象的一些方法,不得不说是真的多\