jsp中有以下范围:
页面范围
请求范围
会话范围
和 适用范围。
我对页面范围感到困惑。谁能告诉我这个页面范围是什么?我没有在任何地方找到明确的定义。
答案 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。