隐式对象

jsp 隐式对象(9个)

config:jsp的配置信息
page:jsp自身对象(this)
exception:异常对象(isErrorPage=true)
response:响应
out:响应字符流
pageContext:页面作用域
request:请求作用域 变量类型 HttpServletRequest
session:会话作用域 (同一个客户端的多次请求) HttpSession
application:应用作用域 变量类型 ServletContext (上下文)

他们都有如下方法

.setAttribute("名", 值);   // 设置
Object 值 = .getAttribute("名"); // 获取
Object 值 = .removeAttribute("名"); // 删除

作用域(Scope)

<%
	// 向page作用域存入内容
	// pageContext.setAttribute("name", "张三"); 
	// 同一页面中的信息
    request.setAttribute("name", "李四");    // 一次请求有效的信息(例如servlet存入结果,jsp获取结果)
    session.setAttribute("name", "王五"); // 每个用户(浏览器)独有的信息(例如购物车信息)
    application.setAttribute("name", "赵六"); // 适合放全局信息(城市信息, 类别信息)
%>

    <!-- 从page作用域获取内容-->
    <%= pageContext.getAttribute("name")%>
    <!--  从page作用域获取内容(推荐) -->
    ${pageScope.name}

    <!-- 从request作用域取-->
    <%= request.getAttribute("name")%>
    <!-- 从request作用域取(推荐)-->
    ${requestScope.name}

    <!-- 从session作用域取值 -->
    <%= session.getAttribute("name")%>
    <!-- 从session作用域取值(推荐) -->
    ${sessionScope.name}

    <!-- 从application作用域取值 -->
    <%= application.getAttribute("name")%>
    <!-- 从application作用域取值(推荐) -->
    ${applicationScope.name}

    <hr/>
    <!-- 在el表达式取作用域变量时,不加前缀,先搜索pageScope, 再搜索requestScope, 继续搜索sessionScope, 再搜索applicationScope-->
    ${name}

el表达式中的隐式对象

一共11个

pageScope page作用域 类型是map集合
requestScope request作用域 类型是map集合
sessionScope 会话作用域 类型是map集合
applicationScope 应用作用域 类型是map集合

param 代表所有请求参数集合 类型是map集合
paramValues 代表所有请求参数集合(用来获取多值参数)

cookie 代表请求中所有的cookie集合 map类型
key是cookie的name, value是cookie对象(name,value)

header 获取请求头的内容 类型是map集合f
key是请求头中key的名称
headerValues 获取请求头的内容(用来获取多值)
initParam 每个jsp可以配置一个初始化参数
initParam.key
pageContext

猜你喜欢

转载自blog.csdn.net/qq_34862798/article/details/82865432