jsp四大作用域有什麼
JSP內建物件作用域
application:在所有應用程式中有效,即只要這個網站運作著,這個作用域就有效,這個指的程式的運行過程。
session:在目前會話中有效,也就是從瀏覽器存取伺服器開始,這個指的是使用者的一個存取過程,也就是這次會話的開始到結束
request:在目前請求中有效,負責多個servlet之間的資訊共享,即將資訊放入到request中,在整個請求階段都是有效的,即用戶訪問的這個階段都可以獲取到這個資料
#page :在目前頁面有效,即在一個jsp頁面上是有效的。
首先要聲明一點,所謂"作用域"就是"資訊共享的範圍",也就是說一個資訊能夠在多大的範圍內有效。
Web互動的最基本單位為HTTP請求。每個使用者從進入網站到離開網站這段過程稱為一個HTTP會話,一個伺服器的運行過程中會有多個使用者訪問,就是多個HTTP會話。作用域解釋如下。
application:伺服器啟動到停止這段時間。
session:HTTP會話開始到結束這段時間。
request:HTTP請求開始到結束這段時間。
page:目前頁面從開啟到關閉這段時間。
1. application 作用域
application作用域就是伺服器啟動到關閉的整段時間,在這個作用域內設定的資訊可以被所有應用程式使用。 application作用域上的資訊傳遞是透過ServletContext實作的,它提供的主要方法如下所示:
Object getAttribute(String name):從application中取得資訊。
void setAttribute(String name, Object value):在application作用域中設定資訊。
2. session作用域
session作用域比較容易理解,同一瀏覽器對伺服器進行多次訪問,在這多次訪問之間傳遞訊息,就是session作用域的體現。 session是透過HttpSession介面實現的,它提供的主要方法如下所示。
Object HttpSession.getAttribute(String name):從session中取得資訊。
void HttpSession.setAttribute(String name, Object value):向session中儲存資訊。
HttpSession HttpServletRequest.getSession():取得目前請求所在的session的物件。
session的開始時刻比較容易判斷,它從瀏覽器發出第一個HTTP請求即可認為會話開始。但結束時刻就不好判斷了,因為瀏覽器關閉時並不會通知伺服器,所以只能透過以下這種方法判斷:如果一定的時間內客戶端沒有反應,則認為會話結束。 Tomcat的預設值為120分鐘,但這個值也可以透過HttpSession的setMaxInactiveInterval(int interval)方法來設置,如果想主動讓會話結束,例如使用者點擊"登出"按鈕的時候,可以使用HttpSession 的invalidate()方法,用於強制結束目前session。
3. request作用域
一個HTTP請求的處理可能需要多個Servlet合作,而這幾個Servlet之間可以透過某種方式傳遞訊息,但這訊息在請求結束後就無效了。
Servlet之間的資訊共享是透過HttpServletRequest介面的兩個方法來實現的。
void setAttribute(String name, Object value):將物件value以name為名稱儲存到request作用域中。
Object getAttribute(String name):從request作用域取得指定名字的資訊。
JSP中的doGet()、doPost()方法的第一個參數就是HttpServletRequest對象,使用這個物件的 setAttribute()方法即可傳遞訊息。
那麼在設定好訊息之後,要透過何種方式將訊息傳遞給其他的Servlet呢?這就要用到RequestDispatcher介面的forward()方法,透過它將請求轉送給其他Servlet。
RequestDispatcher ServletContext.getRequestDispatcher(String path):取得Dispatcher以便轉送。 path為轉送的目的Servlet。
void RequestDispatcher.forward(ServletRequest request, ServletResponse response):將request和response轉送。
因此,只需要在當前Servlet中先透過setAttribute()方法設定對應的屬性,然後使用forward()方法進行跳轉,最後在跳到的Servlet中透過使用getAttribute()方法即可實現訊息傳遞。
PHP的程式設計師可能不太懂這一段,因為PHP沒有轉送的概念,一個請求只能由一個PHP檔來處理,所以PHP根本沒有request作用域的概念。而Servlet則不同,請求可以在應用程式中任意轉發,所以用request作用域在不同Servlet之間傳遞訊息。
注意兩點:
轉送不是重定向,轉送是在Web應用程式內部進行的。 PHP支援重定向但沒有轉送。
轉發對瀏覽器是透明的,也就是說,無論在伺服器上如何轉發,瀏覽器網址列中顯示的仍然是最初那個Servlet的位址。重定向的瀏覽器位址是變化的。
4. page作用域
page物件的作用範圍僅限於使用者要求的目前頁面,對於page物件的參考將在回應傳回給客戶端之後被釋放,或在請求被轉發到其他地方後被釋放。對page物件的參考通常儲存在pageContext物件中。
以上介紹的作用範圍越來越小,request和page的生命週期都是短暫的,它們之間的區別:一個request可以包含多個page頁(include,forward及filter)。
以上是jsp四大作用域有什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

jsp屬於後端。 jsp的本質是一種servlet,而servlet又是伺服器端的java應用程序,所以jsp是屬於後端的技術。 JSP部署於網頁伺服器上,可回應客戶端所傳送的請求,並依照請求內容動態地產生HTML、XML或其他格式文件的Web網頁,然後傳回給請求者。 JSP技術以Java為腳本語言,為使用者HTTP請求提供服務,並能與伺服器上的其它Java程式共同處理複雜的業務需求。

jsp和html區別:1、運作機制;2、用途;3、與Java的關係;4、功能;5、與後端的關係;6、速度;7、可維護性和擴展性;8、學習和使用的難易度;9、文件後綴和識別工具;10、社區和支持;11、安全性。詳細介紹:1、運行機制,HTML是一種標記語言,主要用於描述和定義網頁的內容,它運行在客戶端,由瀏覽器解釋執行,JSP是一種動態網頁技術,運行在伺服器端等等。

新建好springboot專案以後目錄如下:第一步:在專案的pom檔案中加入設定jsp所需的jar套件程式碼:org.apache.tomcat.embedtomcat-embed-jasperprovided第二步:在main路徑下新建目錄webapp ,在webapp下新建路徑WEB-INF,在WEB-INF下新建路徑jsp,在這個路徑下放置我們要使用的jsp檔案第三步:在主設定檔中設定jsp檔案的存取路徑和後綴程式碼:spring .mvc.view.prefix=/WEB-INF/jsp/sp

一、實作分頁查詢的核心sql語句(1)查詢資料庫的記錄總數的sql語句:selectcount(*)from+(表名);(2)每次查詢的記錄數的sql語句:其中:0是搜尋的索引,2是每次查找的條數。 select*from表名limit0,2;二、程式碼實作*上篇寫過這兩個類,DBconnection類:用於取得資料庫連接,Author物件類別。這兩個類別的程式碼點擊連接查看。點選連結查看DBconnection類別和Author物件類別(1)登入頁面:index.jsp。 Inserttitlehere用戶列

實現步驟:1、在JSP頁面中引入JSTL標籤庫;2、從資料庫取得資料;3、對資料進行分頁處理;4、在頁面中顯示分頁導覽條;5、根據目前頁碼和每頁顯示數量,從分頁後的資料中取得對應的資料並顯示在頁面上即可。

JSP是一種動態網頁技術標準,其檔案格式是在傳統的網頁HTML檔案(.htm,.html)中插入Java程式段(Scriptlet)和JSP標記(tag),從而形成JSP檔案(*.jsp )。

JSP能否被PHP取代? JSP(JavaServerPages)和PHP(HypertextPreprocessor)都是常用的伺服器端腳本語言,用於動態產生網頁內容。雖然它們各有特色和優勢,但在實際應用中,是否可以完全取代對方?本文將分析兩者的優缺點,並透過具體的程式碼範例進行比較。首先,我們來看看JSP和PHP各自的特色。 JSP是一種基於Java的

PHP能否替換JSP的功能?隨著Web開發技術的不斷發展,開發人員經常面臨選擇合適的伺服器端語言來實現他們的專案需求。在這方面,PHP和JSP是兩種常見的選擇。 JSP是JavaServerPages的縮寫,它是基於Java的伺服器端技術,而PHP則是一種伺服器端腳本語言。本文將探討PHP是否能夠取代JSP的功能,並提供一些具體的程式碼範例來幫助讀者更好地
