jsp中的页面范围

时间:2014-03-31 15:55:34

标签: java jsp servlets

jsp中有以下范围:

页面范围

请求范围

会话范围

和 适用范围。

我对页面范围感到困惑。谁能告诉我这个页面范围是什么?我没有在任何地方找到明确的定义。

2 个答案:

答案 0 :(得分:12)

page范围意味着,它可以被认为是代表整个JSP页面的对象,即。 JSP对象只能在创建它的同一页面内访问 页面对象实际上是this对象的直接同义词 注意

  

页面范围与请求范围(通常令人困惑)之间的主要区别在于,如果将请求转发到另一个JSP页面,则页面范围属性不再可用请求范围属性可用。

答案 1 :(得分:8)

page范围表示除此之外 绑定到局部变量,应该放置bean对象 当前请求持续时间内的javax.servlet.jsp.PageContext对象。

根据Allamaraju(2004):

  

JSP为JSP作者可以使用的对象定义了四个范围:

+-------------+------------------------------------------------------+
| Scope       | Description                                          |
+-------------+------------------------------------------------------+
| page        | Objects can be accessed only within the JSP page     |
|             | in which they are referenced.                        |
+-------------+------------------------------------------------------+
| request     | Objects can be accessed within all the pages that    |
|             | serve the current request. These include pages       |
|             | that are forwarded to, and included in, the original |
|             | JSP page to which the request was routed.            |
+-------------+------------------------------------------------------+
| session     | Objects can only be accessed within the JSP pages    |
|             | accessed within the session for which the objects    |
|             | are defined.                                         |
+-------------+------------------------------------------------------+
| application | Application scope objects can be accessed by all     |
|             | JSP pages in a given context.                        |
+-------------+------------------------------------------------------+

将对象存储在那里意味着servlet代码可以访问它 在预定义的getAttribute变量上调用pageContext。由于每个页面和每个请求都有一个不同的PageContext对象,这表明该bean未被共享,因此将为每个页面创建一个新的bean 请求。

JSP Tutorial. Servlet Tutorial. Beginning and Intermediate-Level中查看更多内容。


<强>参考

Allamaraju,S。(2004)。 Professional Java Servlets 2.3。 Berkeley,Calif:Apress。