关于jsp与servlet作用域

来源:互联网 发布:软件许可 编辑:程序博客网 时间:2024/06/01 08:16

1.作用域分为四种,分别为:

page 在当前页面有效(仅用于JSP中) 
request 在当前请求中有效 
session 在当前会话中有效 
application 在所有应用程序中有效

2.下边我们先说说这四个对象

2.1.page:page对象有点类似于Java编程中的this指针,就是指当前JSP页面,仅仅用在取jsp当前页面的值。

2.2.request:request对象是指我们用浏览器发送请求,服务器返回资源的一个过程。可以用来存储和取值一个http请求过程中的值,这些值在请求结束就无效了。在servlet或jsp中我们可以通过HttpServletRequest接口的两个方法来实现的存取值:

void setAttribute(String name, Object value) 将对象 value 以 name 为名称保存到request作用域中。 
Object getAttribute(String name) 从request作用域中取得指定名字的信息。 (我们通常用request.getParameter("name")来获取表单中的值、http请求的url中?后面带的参数值)。之前基础不牢,老是混淆。

2.3.session:我们都知道当我们打开浏览器第一次发出http请求,请求web资源时,web容器会对当前的浏览器访问生成唯一的一个会话id即sessionID来标记会话的唯一性,因为在同一时间并不是一个浏览器在访问服务器资源。我们又知道http协议是无连接协议,返回完客户端请求的资源就释放连接。当我们再一次用同一用户同一浏览器访问服务器资源时,服务器需要根据用户发送过来的sessionID来比对是是否是之前的用户在访问资源。总结一句,在有限的时间间隔,同一客户端同一用户访问服务器的过程叫做session.

当然,我们又知道服务器生成的sessionID,服务器要保留sessionID,相应地客户端也得保留sessionID,以便发送http请求时附带着sessionID。客户端的seeeionID默认存在客户端的cookle中,当本地禁用cookie了,我们需要把sessionID用隐藏表单域的形式或者?参数的形式附加载url后面,以便服务器可以接收到sessionID.

2.4.application:web程序启动一直到关闭的过程叫做application.

0 0
原创粉丝点击