历史版本4 :request、response与session 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. request 对象编辑

该对象封装了用户提交的信息,通过调用该对象相应的方法可以获取封装的信息,即使用该对象可以获取用户提交的信息。

request.getAttribute("key") 可得到 JSP 页面存入 Value。在实际的存储中,key 和 value 是存放在一个哈希表中的,所以在这里给出 String 的 key 会到哈希表中找出对应他的 value。

而不同页面间传值使用 request.setAttribute(key, value)时,只会从 a.jsp 到 b.jsp 一次请求,之后如果有第二次请求,这个 request 就会失去它的作用范围,再传就要再设置一次 request.setAttribute(key,value) 或者使用 request 的 forward() 方法跳转也可以(因为它是一次请求)。而使用 session.setAttribute() 会在一个过程中始终保有这个值。

2. response 对象编辑

包含了响应客户请求的有关信息,但在 JSP 中很少直接用到它。它是 HttpServletResponse 类的实例。response 对象用于动态响应客户端请示,控制发送给用户的信息,并将动态生成响应。在响应客户端请求之前,一般可以先设置客户端响应的编码格式,以防客户端出现乱码。response.setCharacterEncoding("GBK");

response 既可以在本网站跳转,也可以跳转到其他网站中;在跳转过程中,相当于在 URL 地址栏中重新输入 URL,是第二次请求,所以在 request 和 response 保存的数据就不存在了。

3. Session 对象编辑

指的是客户端与服务器的一次会话,从客户连到服务器的一个 WebApplication 开始,直到客户端与服务器断开连接为止。它是 HttpSession 类的实例。

Session:用于保存每个用户的专用信息。Session 中的信息保存在 Web 服务器的内存中,保存的数据量可大可小。当 Session 超时或被关闭时将自动释放保存的数据信息。对于小量的数据 Session 对象保存还是一个不错的选择。

具体的 Session 对象可以参考其他章节:Session 问题集锦 和 Session赋值并获取