更新時間:2023-04-14 來源:黑馬程序員 瀏覽量:
IT就到黑馬程序員.gif)
JSP(Java Server Pages)是一種用于動態(tài)生成 HTML 頁面的 Java 技術(shù),它支持四種不同的作用域,分別是:
1.Page Scope:頁面作用域是指頁面內(nèi)的變量,它們在頁面內(nèi)有效,但在JSP(Java Server Pages)是一種用于動態(tài)生成 HTML 頁面的 Java 技術(shù),它支持四種不同的作用域,分別是其他頁面中不可見。頁面作用域變量可以通過 pageContext 對象進(jìn)行訪問。
2.Request Scope:請求作用域是指變量在請求中傳遞。在同一次請求中,變量在不同的頁面間共享。請求作用域變量可以通過 request 對象進(jìn)行訪問。
3.Session Scope:會話作用域是指變量在用戶會話期間保持一致。在同一用戶的不同請求中,變量在不同的頁面之間共享。會話作用域變量可以通過 session 對象進(jìn)行訪問。

4.Application Scope:應(yīng)用程序作用域是指變量在整個應(yīng)用程序生命周期內(nèi)保持一致。在同一應(yīng)用程序的不同請求中,變量在不同的頁面之間共享。應(yīng)用程序作用域變量可以通過 application 對象進(jìn)行訪問。
下面是一個簡單的 JSP 頁面,演示了如何在不同作用域中設(shè)置和獲取變量:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>作用域演示</title>
</head>
<body>
<%-- 在頁面作用域中設(shè)置變量 --%>
<% pageContext.setAttribute("pageVariable", "PageScope"); %>
<%-- 在請求作用域中設(shè)置變量 --%>
<% request.setAttribute("requestVariable", "RequestScope"); %>
<%-- 在會話作用域中設(shè)置變量 --%>
<% session.setAttribute("sessionVariable", "SessionScope"); %>
<%-- 在應(yīng)用程序作用域中設(shè)置變量 --%>
<% application.setAttribute("applicationVariable", "ApplicationScope"); %>
<%-- 輸出各個作用域中的變量 --%>
<h1>作用域演示</h1>
<p>頁面作用域中的變量:${pageContext.pageVariable}</p>
<p>請求作用域中的變量:${request.requestVariable}</p>
<p>會話作用域中的變量:${session.sessionVariable}</p>
<p>應(yīng)用程序作用域中的變量:${application.applicationVariable}</p>
</body>
</html>在上面的例子中,我們分別使用pageContext、request、session 和application對象設(shè)置了不同作用域中的變量,并使用EL 表達(dá)式${}在頁面中輸出了這些變量的值。需要注意的是,EL表達(dá)式中的變量名要與 setAttribute()方法中設(shè)置的變量名一致。
1024首播|39歲程序員逆襲記:不被年齡定義,AI浪潮里再迎春天
2025-10-241024程序員節(jié)丨10年同行,致敬用代碼改變世界的你
2025-10-24【AI設(shè)計】北京143期畢業(yè)僅36天,全員拿下高薪offer!黑馬AI設(shè)計連續(xù)6期100%高薪就業(yè)
2025-09-19【跨境電商運營】深圳跨境電商運營畢業(yè)22個工作日,就業(yè)率91%+,最高薪資達(dá)13500元
2025-09-19【AI運維】鄭州運維1期就業(yè)班,畢業(yè)14個工作日,班級93%同學(xué)已拿到Offer, 一線均薪資 1W+
2025-09-19【AI鴻蒙開發(fā)】上海校區(qū)AI鴻蒙開發(fā)4期5期,距離畢業(yè)21天,就業(yè)率91%,平均薪資14046元
2025-09-19