对于java中作用域
来源:互联网 发布:linux 没有nslookup 编辑:程序博客网 时间:2024/04/30 10:24
page 在当前页面有效(仅用于JSP中)
request 在当前请求中有效
session 在当前会话中有效
application 在所有 应用程序中有效
request HTTP请求开始到结束这段时间
session HTTP会话开始到结束这段时间
application 服务器启动到停止这段时间
page:用户请求的当前页面;
Request:用户请求访问的当前组件,以及和当前web组件共享同一用户请求的web组件。如:被请求的jsp页面和该页面用<include>指令包含的页面以及<forward>标记包含的其它jsp页面;
Session:同一个http会话中的web组件共享它;
Application:整个web应用的所用web组件共享它。
如果把变量放到pageContext里,就说明它的作用域是page,它的有效范围只在当前jsp页面里。从把变量放到pageContext开始,到jsp页面结束,你都可以使用这个变量。
如果把变量放到request里,就说明它的作用域是request,它的有效范围是当前请求周期。所谓请求周期,就是指从http请求发起,到服务器处理结束,返回响应的整个过程。在这个过程中可能使用forward的方式跳转了多个jsp页面,在这些页面里你都可以使用这个变量。
如果把变量放到session里,就说明它的作用域是session,它的有效范围是当前会话。
所谓当前会话,就是指从用户打开浏览器开始,到用户关闭浏览器这中间的过程。这个过程可能包含多个请求响应。也就是说,只要用户不关浏览器,服务器就有办法知道这些请求是一个人发起的,整个过程被称为一个会话(session),而放到会话中的变量,就可以在当前会话的所有请求里使用。
如果把变量放到application里,就说明它的作用域是application,它的有效范围是整个应用。整个应用是指从应用启动,到应用结束。没有说“从服务器启动,到服务器关闭”,是因为一个服务器可能部署多个应用,当然你关闭了服务器,就会把上面所有的应用都关闭了。application作用域里的变量,它们的存活时间是最长的,如果不进行手工删除,它们就一直可以使用。
与上述三个不同的是,application里的变量可以被所有用户共用。如果用户甲的操作修改了application中的变量,用户乙访问时得到的是修改后的值。这在其他scope中都是不会发生的,page, request, session都是完全隔离的,无论如何修改都不会影响其他人的数据。
- 对于java中作用域
- Js中作用域对于数组绑定事件的影响
- C#中@对于字符串类型的作用
- C#中@对于字符串类型的作用
- javascript中delete对于变量的作用
- java中bean作用域
- 浅谈对于作用域的理解
- 51单片机中EA对于RTX51的作用
- java中变量的作用域
- java中作用域与可见性
- java中作用域与可见性
- java 中cookie作用域问题
- Java中变量的作用域
- Java中变量的作用域
- java 中cookie作用域问题
- Java中类修饰符作用域
- java中作用域的问题
- java中变量作用域的理解
- Linux下安装Sublime Text3及其破解
- adb logcat 用法和举例
- 单例模式
- 从网络解析数据时遇到的问题
- connect-examples
- 对于java中作用域
- 自定义导航栏,系统导航栏一堆bug
- 别人家的设计不一定适合你!移动端设计模式的误用
- Swift 基本运算符(笔记)
- Redis入门之redis 连接以及 对字符的操作
- android-async-http AsyncHttpClient介绍
- 如何启动另外一个应用的任意Activity
- 美联储加息落地 题材股继续活跃创业板大涨1.85%
- Wing IDE for Linux 的安装和破解