EL 的隐式对象


EL 隐式对象

  • 隐式(内置)对象就是可以直接使用对象。
  • 在之前的文章 EL 与 JSTL 简化 JSP 操作 中介绍了 EL 常用的 2 个隐式对象:pageContext 和 cookie。EL 有 11 个隐式对象,其他的隐式对象又是什么呢?

1. 引入

  • 回顾 demo.jsp:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>demo.jsp</title>
</head>
<body>
<h3>EL 隐式对象</h3>
${pageContext.request.contextPath} 动态获取:项目名称(虚拟路径)<br>
${cookie.JSESSIONID.value} 获取指定cookie名称的值...<br>
</body>
</html>

2. 11个隐式对象

在这里插入图片描述

  • 因为 reqeust 对象不是属于 EL 表达式的内置对象。

3. EL 隐式对象的属性与方法

  • 为什么可以获得 pageContext.requestrequest.contextPath 呢?
  • 一个对象是否存在某个属性数据,在 EL 表达式看来只关注 getter 方法。之所以能获得 pageContext.requestrequest.contextPath,是因为 pageContext 和 request 分别有 getRequest 和 getContextPath 这两个方法。具体案例可见下面的应用。

4. 应用:页面跳转

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>$Title$</title>
</head>
<body>
<%--
${pageContext.request.contextPath} 获取当前模块的根目录
--%>
<%-- 方法本质 --%>
<%
    request.getContextPath();  
    pageContext.getRequest();
%>
<a href="${pageContext.request.contextPath}/index.jsp">主页</a>
</body>
</html>

原文链接:https://qwert.blog.csdn.net/article/details/105721081

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值