首页 > 其他分享 >pageContext对象

pageContext对象

时间:2022-10-19 12:07:03浏览次数:43  
标签:String 对象 setAttribute pageContext jsp PageContext 请求

【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:应用范围的数据。用的不多。所有客户端都共享的信息。注意同步。






标签:String,对象,setAttribute,pageContext,jsp,PageContext,请求
From: https://blog.51cto.com/u_8406447/5769517

相关文章

  • ini配置文件与ConfigParser对象
    ini配置文件与ConfigParser对象目录结构​​ini配置文件与ConfigParser对象​​​​ini配置文件简介​​​​configparser模块中的ConfigParser类​​​​常用方法​​​​......
  • 试验2 类与对象(2)
    试验任务4Complex.cpp#pragmaonce#include<iostream>#include<cmath>classComplex{public: Complex(); Complex(doublenewreal); Complex(doublenewreal,doubl......
  • ADO.NET中的五个主要对象
    Connection物件Connection对象主要是开启程序和数据库之间的连结。没有利用连结对象将数据库打开,是无法从数据库中取得数据的。这个物件在ADO.NET的最底层,我们可以自......
  • 203. 面向对象(上) 方法重载
    203.面向对象(上)方法重载方法的重载(overload)定义:在同一个类中,允许存在一个以上的同名方法,只要它的参数个数或参数类型不同即可."两同一不同":同一个类,相......
  • 实验二 类与对象(2)
     Task4:Complex.hpp 1#pragmaonce23//Complex类的定义4#include<iostream>5#include<string>6#include<math.h>78usingstd::cout;9usin......
  • 实验2 类和对象(2)
    4.实验任务4Complex.hpp#pragmaonce#include<iostream>#include<math.h>classComplex{private:doublereal,imag;public:Complex();~Com......
  • 实验2 类与对象(2)
    2022.10.12OOP实验课实验2类与对象(2)任务4Complex.hpp#pragmaonce#include<iostream>#include<math.h>classComplex{private:doublereal;double......
  • 实验二 类和对象
    实验任务4task4.cpp#include"Complex.hpp"#include<iostream>//类测试voidtest(){usingnamespacestd;Complexc1(1,-8);constComplexc2(6......
  • 实验二 类和对象
    #pragmaonce#include<iostream>#include<iomanip>#include<cmath>usingstd::cout;usingstd::endl;usingstd::setfill;usingstd::setw;usingstd::left;......
  • 类和对象(2)
    实验4:Complex.hpp文件源码1#pragmaonce23//Complex类的定义4#include<iostream>56usingnamespacestd;78//Complex类的声明9classComp......