EL 隱式對象
- 隱式(內置)對象就是可以直接使用對象。
- 在之前的文章 EL 與 JSTL 簡化 JSP 操作 中介紹了 EL 常用的 2 個隱式對象:pageContext 和 cookie。EL 有 11 個隱式對象,其他的隱式對象又是什麼呢?
1. 引入
<%@ 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.request
和 request.contextPath
呢?
- 一個對象是否存在某個屬性數據,在 EL 表達式看來只關注 getter 方法。之所以能獲得
pageContext.request
和 request.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