JavaWeb——JSP的EL之EL隐含对象

JavaWeb——JSP 的 EL

二、EL 隐含对象

  • EL 提供了类似 JSP 的内置对象的 11 个隐含对象,这些隐含对象可以划分为页面上下文对象、访问作用域范围的隐含对象和访问环境信息的隐含对象

1、页面上下文对象

  • 页面上下文对象为pageContext,用于访问 JSP 的内置对象中的 request、response、out、session、exception、page 以及 servletContext;获取这些内置对象后就可以获取相关属性值。
    <h2>1、页面上下文对象</h2>
    <b>1.1、访问 request 对象</b><br>
    ${pageContext.request.serverPort}<br>
    <b>1.2、访问 response 对象</b><br>
    ${pageContext.response.contentType}<br>
    <b>1.3、访问 out 对象</b><br>
    ${pageContext.out.bufferSize}<br>
    <b>1.4、访问 session 对象</b><br>
    ${pageContext.session.maxInactiveInterval}<br>
    <b>1.5、访问 exception 对象</b><br>
    ${pageContext.exception.message}<br>
    <b>1.6、访问 servletContext 对象</b><br>
    ${pageContext.servletContext.contextPath}<br>
    
  • 页面显示如下:
    在这里插入图片描述

2、访问作用范围的隐含对象

  • EL 提供了 pageScope、requestScope、sessionScope 和 applicationScope 共四个用于访问作用域范围的隐含对象。
2.1、pageScope
  • pageScope 隐含对象用于返回包含页面范围在内的属性值的集合,返回值为 java.util.Map 对象,示例如下:
  • 首先创建一个名称为 StudentInfo 的 JavaBean,代码如下:
    //IntelliJ IDEA
    //JavaWebProject1
    //StudentInfo
    //2019/12/7
    // Author:御承扬
    //E-mail:2923616405@qq.com
    
    package com.lyq.bean;
    
    public class StudentInfo {
        private String ID;
        private String name;
    
        public void setName(String name) {
            this.name = name;
        }
    
        public String getName() {
            return name;
        }
    
        public void setID(String ID) {
            this.ID = ID;
        }
    
        public String getID() {
            return ID;
        }
    }
    
  • 在 JSP 页面编辑如下代码:
    h3>2.1、pageScope</h3>
    <jsp:useBean id="student" class="com.lyq.bean.StudentInfo" type="com.lyq.bean.StudentInfo">
        <jsp:setProperty name="student" property="ID" value="201724073169"/>
        <jsp:setProperty name="student" property="name" value="Lucy"/>
    </jsp:useBean>
    \${pageScope.student.ID}:
    ${pageScope.student.ID}<br>
    \${pageScope.student.name}:
    ${pageScope.student.name}<br>
    
  • 效果:
    在这里插入图片描述
2.2、requestScope
  • requestScope 隐含对象用于返回包含请求范围内的属性值的集合,返回值同样是 java.util.Map 对象。
  • 示例:
    <h3>2.2、requestScope</h3>
    <%
        request.setAttribute("author", "御承扬");
    %>
    \${requestScope.author}:
    ${requestScope.author}<br>
    
  • 效果:
    在这里插入图片描述
  • sessionScope 和 applicationScope 的使用方式同上面类似。

3、访问环境信息的隐含对象

  • EL 中有如下 6 个用于访问环境信息的隐含对象。
  • param 对象用于获取请求参数的值,适用于参数值只有一个的情况;
  • paramValues 用于获取参数值不单一的;
  • header 和 headerValues 同上面类似;
  • initParam 用于获取 Web 应用初始化参数的值;
  • cookie 用于获取 cookie 对象的值。

上一篇

下一篇

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

御承扬

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值