JSP四大作用域和九种隐式对象

1.四大作用域

1.pageContext 当前页面 

  通过pageContext.setAttribute(key,value)的数据,只能在当前页面访问,在其他页面就不能访问了。


2.requestContext 一次请求 

  如果把变量放到request里,就说明它的作用域是request,它的有效范围是当前请求周期。所谓请求周期,就是指从http请求发起,到服务器处理结束,返回响应的整个过程。在这个过  程中可能使用forward的方式跳转了多个jsp页面,在这些页面里你都可以使用这个变量。


3.sessionContext 当前会话 

  sessionContext 指的是会话,从一个用户打开网站的那一刻起,无论访问了多少网页,链接都属于同一个会话,直到浏览器关闭。 所以页面间传递数据,也是可以通过session传递的。
但是,不同用户对应的session是不一样的,所以session无法在不同的用户之间共享数据。


4.applicationContext 全局,所有用户共享

applicationContext 指的是全局,所有用户共享同一个数据
在JSP中使用application对象, application对象是ServletContext接口的实例
也可以通过 request.getServletContext()来获取。
所以 application == request.getServletContext() 会返回true
application映射的就是web应用本身。

2.九种隐式对象

JSP一共有9个隐式对象,分别是 
request,response,out 
pageContext, session,application 
page,config,exception

1.request 代表请求 
2.response 代表响应 
3.out 代表 输出

4.pageContext 代表当前页面作用域

5.session 代表当会话作用域
6、application 代表当全局作用域

7、page 对象即表示当前对象;JSP 会被编译为一个Servlet类 ,运行的时候是一个Servlet实例。 page即代表this

8、config可以获取一些在web.xml中初始化的参数。

9、exception 对象只有当前页面的<%@page 指令设置为isErrorPage="true"的时候才可以使用。
同时,在其他页面也需要设置 <%@page 指令 errorPage="" 来指定一个专门处理异常的页面。

猜你喜欢

转载自blog.csdn.net/QingXu1234/article/details/81410055