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:[email protected]
    
    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 对象的值。

上一篇

下一篇

发布了146 篇原创文章 · 获赞 15 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_42896653/article/details/103435849
今日推荐