pageContext对象

来源:互联网 发布:java面试 csdn 编辑:程序博客网 时间:2024/06/15 12:54
【pageContext对象】


//可以存储变量 注意:这种存储方式只能在本页面获取,其他页面无法获取。
    pageContext.setAttribute("name", "孙悟空");
//获取方法为:
String name =(String)pageContext.getAttribute("name");
操作其他的三个与对象(ServletRequest HTTPSession ServletContext中的数据)
void setAttribute(String key,Object value,int scope);
void removeAttribute(String key,int scope);
Object getAttribute(String key,int scope);

scope:
PageContext.PAGE_SCOPE 页面范围
PageContext.REQUEST_SCOPE 请求范围
PageContext.SESSION_SCOPE会话范围
PageContext.APPLICATEION_SCOPE 应用范围

【pageContext.findAttribute(String)】可以从4个与对象中寻找指定值。找不到,会报错
即:      pageContext.setAttribute("name", "孙悟空");
session.setAttribute("name4", "白龙马");
application.setAttribute("name2", "唐僧");

request.setAttribute("name3", "沙和尚");

【pageContext:获取其他8个对象】

    <%    //pageContext获取其他8个对象    ServletContext servletContext01=pageContext.getServletContext();    ServletConfig config01=pageContext.getServletConfig();    HttpSession session01=pageContext.getSession();    PrintWriter out01=pageContext.getResponse().getWriter();    HttpServletRequest request01=(HttpServletRequest)pageContext.getRequest();    HttpServletResponse response01=(HttpServletResponse)pageContext.getResponse();    Object page01=this;    %>

【pageContext:请求转发与包含】

    <%    //pageContext对象:请求转发和请求包涵    request.setAttribute("sname", "张三丰");    //请求转发    //pageContext.forward("/jsp/JPageContext03.jsp");    //请求包含    pageContext.include("/jsp/JPageContext03.jsp");    %>

附加jsp四大对象
PageContext:页面范围的数据。用的少
ServletRequest:请求范围的数据。用的多。显示一次数据后就没有用了。这样的数据就可以放到该范围中
HttpSession: 会话范围的数据。用的多,每次请求和响应都需要共享的数据。可以保存登录信息
ServletContext:应用范围的数据。用的不多。所有客户端都共享的信息。注意同步。





0 0