jsp四大作用域
application作用域:对应整个应用上下文:
page作用域:(作用域指本JSP页面范围)
- pageContext.setAttribute(键,值)
- pageContext.getAttribute(键)
<%
String name="curry";
pageContext.setAttribute("name",name);
%>
为:<%=pageContext.getAttribute("name")%>
</body>
<%@ include file="two.jsp "%> <%--curry-- 展示第二个jsp的值%>
<%pageContext.include("two.jsp");%> <%--null--展示第二个jsp的值%>
request作用域:
request作用域内的对象则是与客户端的请求绑定在一起的
one.jsp
<%
String name="curry";
pageContext.setAttribute("name",name);
request.getRequestDispatcher("two.jsp").forward(request,response);
%>
two.jsp
name:<%=request.getAttribute("name")%>
session作用域:
session作用域:一次会话
one.jsp:
<%
String req="request";
String ses="session";
request.setAttribute("req",req);
session.setAttribute("ses",ses); /*不管是几次请求 是一次会话*/
response.sendRedirect("two.jsp"); /*使用的是重定向 会出现发送一次请求*/
%>
two.jsp:
request:<%=request.getAttribute("req")%> <%--null--%>
session:<%=session.getAttribute("ses")%> <%--session--%>
application作用域:
application作用域:面对整个Web应用程序
one.jsp:
<%
String ses="session";
String app="application";
session.setAttribute("ses",ses); /*不管是几次请求 是一次会话*/
application.setAttribute("app",app);
response.sendRedirect("two.jsp"); /*使用的是重定向 会出现发送一次请求*/
%>
two.jsp:
session:<%=session.getAttribute("ses")%> <%--session--%> <%--换一个浏览器就变成null--%>
application:<%=application.getAttribute("app")%> <%--application--%>
对象作用域:(总结)
对象作用域
名称 |
说明 |
page作用域 |
在一个页面范围内有效,通过pageContext对象访问 |
request作用域 |
在一个服务器请求范围内有效 |
session作用域 |
在一次会话范围内有效 |
application作用域 |
在一个应用服务器范围内有效 |