jsp九大内置对象及四个作用域

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jsp九大内置对象及四个作用域相关的知识,希望对你有一定的参考价值。

request           请求对象             类型 javax.servlet.ServletRequest        作用域 Request

response          响应对象              类型 javax.servlet.SrvletResponse        作用域 Page

pageContext       页面上下文对象        类型 javax.servlet.jsp.PageContext       作用域 Page

session           会话对象              类型 javax.servlet.http.HttpSession      作用域 Session

application       应用程序对象          类型 javax.servlet.ServletContext        作用域 Application

out               输出对象              类型 javax.servlet.jsp.JspWriter         作用域 Page

config            配置对象              类型 javax.servlet.ServletConfig         作用域 Page

page              页面对象              类型 javax.lang.Object                   作用域 Page

exception         例外对象              类型 javax.lang.Throwable                作用域 page

“exception” 对象则代表了JSP文件运行时所产生的例外对象,此对象不能在一般JSP文件中直接使用,而只能在使用了“<%@ page isErrorPage="true "%>”的JSP文件中使用。

 

  先让我们看看效果:

  从显示的结果来看,我们可以直观的得出结论:

  request里的变量可以跨越forward前后的两页。但是只要刷新页面,它们就重新计算了。

    application里的变量一直在累加,除非你重启tomcat,否则它会一直变大。

  如果把变量放到pageContext里,就说明它的作用域是page,它的有效范围只在当前jsp页面里。

  如果把变量放到request里,就说明它的作用域是request,它的有效范围是当前请求周期。

  如果把变量放到session里,就说明它的作用域是session,它的有效范围是当前会话。

  如果把变量放到application里,就说明它的作用域是application,它的有效范围是整个应用。

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

  与上述三个不同的是,application里的变量可以被所有用户共用。如果用户甲的操作修改了application中的变量,用户乙访问时得到的是修改后的值。这在其他scope中都是不会发生的,page, request,session都是完全隔离的,无论如何修改都不会影响其他人的数据。


以上是关于jsp九大内置对象及四个作用域的主要内容,如果未能解决你的问题,请参考以下文章

JSP九大内置对象及四个作用域

JSP九大内置对象及四个作用域

JSP九大内置对象及四个作用域详解

jsp九大内置对象及四个作用域

JSP内置对象及常用方法

java web 九大内置对象和四个作用域之间的关系是啥?