这4个对象,都可以保存数据,但是他们保存的周期不同。
pageContext: 当前页面有效。
request: 同一个请求。
session: 同一个会话。
application: 同一个应用服务器。
他们都有setAttribute()保存数据,getAttribute()获取数据。removeAttribute移除数据。
a.jsp
<%
//// response.sendRedirect("/c.jsp"); //重定向跳转到c.jsp
// request.getRequestDispatcher("/c.jsp").forward(request,response);//请求转发跳转
pageContext.setAttribute("u","这时pageContext的内容");
request.setAttribute("u","这时request的内容");
session.setAttribute("u","这时session的内容");
application.setAttribute("u","这时application的内容");
// response.sendRedirect("/c.jsp"); //重定向跳转到c.jsp
// request.getRequestDispatcher("/c.jsp").forward(request,response);//请求转发跳转
%>
<%
//获取4大域中数据
Object u1 = pageContext.getAttribute("u");
Object u2 = request.getAttribute("u");
Object u3 = session.getAttribute("u");
Object u4 = application.getAttribute("u");
out.print(u1+"<br>");
out.print(u2+"<br>");
out.print(u3+"<br>");
out.print(u4+"<br>");
%>
c.jsp
<%
//获取4大域中数据
Object u1 = pageContext.getAttribute("u");
Object u2 = request.getAttribute("u");
Object u3 = session.getAttribute("u");
Object u4 = application.getAttribute("u");
out.print(u1+"<br>");
out.print(u2+"<br>");
out.print(u3+"<br>");
out.print(u4+"<br>");
%>
验证:
http://localhost:8080/a.jsp
有效期越长,占用的资源时间越长。 一般我们只使用request和session对象。 而且大多数数据都放在request中,只有当前登录者的信息放在session中。 大多数都使用请求转发跳转。有效期越长,占用的资源时间越长。 一般我们只使用request和session对象。 而且大多数数据都放在request中,只有当前登录者的信息放在session中。 大多数都使用请求转发跳转。
标签:越长,大域,request,对象,session,jsp,print,out From: https://www.cnblogs.com/xiaomubupi/p/18620735