JSP共享范围

概念:对象的声明周期和可访问性称为作用域(scope).

注:有时候内置对象的作用域一旦设置就不能修改,其他对象(如JavaBean)可以设置他的作用域

作用域类型:

Page:页面域(对象只对于它所在页面可访问)

Request:请求域(对象在相应请求的生命周期内有效,即对象在创建它的页面内有效,以及请求被转载和包含的页面内有效。请求域的对象是线程安全的,只有相应请求的执行     线程可以访问这些对象)

     所谓请求周期,就是指从http请求发起,到服务器处理结束,返回响应的整个过程。在这个过程中可能使用forward的方式跳转了多个jsp页面,在这些页面里你都可     以使用这个变量。

Session:回话域(对于参与某个客户端会话的所有应用组件是有效的。这类对象不是线程安全的)

     所谓当前回话,是指从用户打开浏览器到用户关闭浏览器这中间的过程

Application:应用域(应用域的对象在整个应用的整个生命周期内都是有效果的。这类对象不是线程安全的)

        整个应用是指从应用启动,到应用结束。我们没有说“从服务器启动,到服务器关闭”,是因为一个服务器可能部署多个应用,当然你关闭了服务器,就会把上        面所有的应用都关闭了。

        application作用域里的变量,它们的存活时间是最长的,如果不进行手工删除,它们就一直可以使用。

各种setAttribute() 方法比较:
      使用pageContext所设定的属性对象,共享范围限于同一个JSP页面。
      使用session设定的属性在同一个进程中可以共享。
      使用request所设定的属性对象,在同一个 request处理期间可以共享(包括forward给其它JSP页面)。
      使用session对象所设定的属性对象则限于同一个进程作用期间可以共享。
      使用application对象设定的属性,在整个Web应用程序中的JSP页面都可 共享。
 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。