前言
本文主要讲解javaweb的四个域对象以及他们的作用范围,后面会有小demo来具体测试。
四个域对象
(1)pageContext:属性的作用范围仅限于当前JSP页面;
(2)request:属性的作用范围仅限于同一个 请求;
(3)session:属性的作用范围仅限于一次会话,游览器打开直到关闭为一次会话(前提是在此期间会话不会失效)
(4)application:属性的作用范围限于当前WEB应用。
域对象共有的方法:
(1)Object getAttribute(String name):获取指定属性;
(2)Enumeration getAttributeNames():获取所有属性的名字组成的Enumeration对象;
(3)removeAttribute(String name):移除指定属性;
(4)void setAttribute(String name,Object o):设置属性。
项目结构
web.xml
javaWeb_13
first.jsp
first.jsp
pageEncoding="UTF-8"%>
当前页获取域对象里面的属性值First Page
pageContext.setAttribute("pageContextAttr", "pageContextValue");
request.setAttribute("requestAttr", "requestValue");
session.setAttribute("sessionAttr", "sessionValue");
application.setAttribute("applicationAttr", "applicationValue");
%>
01-pageContext:
02-request:
03-session:
04-application:
second.jsp
pageEncoding="UTF-8"%>
跨页面获取域对象里面的属性值Second Page
01-pageContext:
02-request:
03-session:
04-application:
运行项目后,在当前页面里面可以取到所有域对象的值
跨页面时,由于是不同的页面,不同的请求,所以pageContext和request为空
关闭游览器,再次重新打开,直接输入第二个页面的地址,session也为空,说明再次打开游览器后不是同一次会话