application对象的常用方法:
void setAttribute(String key,Object value):以键 /
值的方式,将一个对象的值存放到application中。
所谓的属性范围就是一个属性设置之后,可以经过多少个其他页面后仍然可以访问的保存范围。
对象的范围:
范围决定了JSP是否可以进行对象访问。
在一个页面范围内有效,通过pageContext对象访问该范围内的对象。
pageContext从字面上的定义,可以发现,是表示一个页面(page)的上下文(Context),可以表示一个页面中的所有内容。
从操作流程图来看,在第一个页面设置的属性经过服务器端跳转到第二个页面以后,在第二个页面是无法取得在第一个页面中设置的属性的,就好比现在坐着的桌子上有一支笔,但一旦离开了这张桌子,坐到别的桌子上时,笔就没有了。
request属性范围表示在一次服务器跳转中有效,只要是服务器跳转,则设置的request属性可以一直传递下去。
在一个服务器请求范围内有效,与客户端请求绑定在一起。
session设置的属性不管如何跳转,都可以取得的。当然,session只针对一个用户。
在一次会话范围内内容有效,在会话期间与session绑定的对象皆属于该范围。
在一个应用服务器范围内有效,当应用服务启动后即创建该对象,并向所有用户所共享。
因为application属性范围是在服务器上设置的一个属性,所以一旦设置之后任何用户都可以浏览到此属性。
之前所讲解的四种属性范围,实际上都是通过pageContext属性范围设置上的。
设置属性:
public void setAttribute(String name,Object value)
取得属性:
public object getAttribute(String name)
删除属性:
public void removeAttribute(String name)
1、request:如果客户向服务器发请求,产生的数据,用户看完就没用了,像这样的数据就存在request域,像新闻数据,属于用户看完就没用的。
2、session:如果客户向服务器发请求,产生的数据,用户用完了等一会儿还有用,像这样的数据就存在session域中,像购物数据,用户需要看到自己购物信息,并且等一会儿,还要用这个购物数据结帐。
3、application(servletContext):如果客户向服务器发请求,产生的数据,用户用完了,还要给其它用户用,像这样的数据就存在application(servletContext)域中,像聊天数据。
部分精华内容摘自博客:孤傲苍狼
原文地址:
http://www.cnblogs.com/xdp-gacl/tag/JavaWeb%E5%AD%A6%E4%B9%A0%E6%80%BB%E7%BB%93/
十分佩服这个博客博主!