1. 程式人生 > >JSP頁面在被訪問的時候的執行過程

JSP頁面在被訪問的時候的執行過程

當客戶端瀏覽器向伺服器發出訪問一個JSP頁面的請求時,伺服器根據該請求載入相應的JSP頁面,並對該頁面進行編譯,然後執行。JSP頁面的執行過程如下圖所示:

  1. 客戶端通過瀏覽器向伺服器發出請求,在該請求中包含了請求的資源的路徑,這樣當伺服器接收到該請求後就可以知道被請求的內容,也就是哪個jsp頁面。

          2.伺服器根據接收到的客戶端的請求來載入相應的JSP檔案。

          3.Web伺服器中的JSP引擎會將被載入的JSP檔案先轉化為Servlet。

          4.JSP引擎將生成的Servlet程式碼編譯成Class檔案,在這裡會進行自動編譯 不用跟java檔案一樣需要自己手動編譯檔案。

          5.伺服器執行這個Class檔案。

         6.最後伺服器將執行結果傳送給瀏覽器進行顯示。

           從上面的解釋中可以看到,

       (1)JSP檔案先被JSP引擎轉換後,

       (2)後又被編譯成了Class檔案,

       (3)最終由伺服器通過執行這個Class檔案來對

       (4)客戶端的請求進行響應。其中第二步和第三步構成了JSP處理過程中的翻譯階段,而第四步則為請求處理階段。

         但並不是每次請求都需要重複進行這樣的處理。當伺服器第一次接收到對某個頁面的請求時,

       JSP引擎就開始按照上述的處理過程來將被請求的JSP檔案編譯成Class檔案。當再次對該頁面進行請求時 ,如果頁面沒有被修改那麼伺服器就不會再重新編譯他,只有被修改了之後才會重新編譯,所以第一次訪問比較慢,第二次開始速度就快了。


相關推薦

HTML 中點擊<a>標簽,頁面跳轉執行過程

文件 system log aid family 網址匹配 sof 標簽 返回 HTML鏈接使用的是<a>標簽點擊超鏈接,後臺的執行大致如下:<a href="https://www.baidu.com">超鏈接</a>根據鏈接地址看出,

jsp頁面元素與執行原理 Jsp與servlet的區別與聯絡

jsp (java server pages) Jsp頁面元素 7種 1.指令<% page%>,<%@ include%>,<%@ tablib%> 2.小指令碼<% %> 3.表示式<%= %> 4.宣告<%! %>

第三方工具統計頁面訪問的次數

這是一個第三方工具 怎麼實現的不重要 百度統計和cnzz統計(友盟) 這個寫的很詳細,可以看一下 一、去掉“站長統計”的字樣 <script src="https://s13.cnzz.com/z_stat.php?id=自己的id&web_id=自己的id" la

java工程如何修改成web工程,並進行jsp頁面訪問

首先要用Myeclipse新建一個java工程,我這裡就隨便起了一個名字:AA 新建完工程之後,要新增web支援才行,如果不新增web的支援,會部署不到tomcat中: 在工程的上面右鍵---> myeclipse ---> add web project C

JavaEE專案在WEB-INF目錄下的jsp頁面如何訪問WebRoot中的CSS和JS文

寫專案為了訪問安全問題,將jsp頁面放在WEB-INF下,卻訪問不到樣式檔案。試了很多方法,以下可行好用: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncodi

JSP頁面如何訪問標籤中定義的變數-使用實現

首先定義標籤類: 其中message為變數名 package testtag;import javax.servlet.jsp.JspException;import javax.servlet.jsp.JspWriter;import javax.servlet.jsp.

Java小專案中WEB-INF下jsp頁面如何訪問

                                       Java小專案中WEB-INF下jsp頁面如何訪問 一:一般為啥要把jsp頁面放在WEB-INF吶?      這樣主要是為了網站的安全的角度來說的,WEB-INF是安全目錄Tomcat 預設的

一個web頁面訪問過程

  為什麼我們不能自己建立一個www.sina.com或者www.google.com這樣的網站而讓全世界的人都訪問我這個網站呢(顯然sina和google肯定不會讓你這麼幹)?由以上幾步可以看出,因為域名系統的存在,使得我們可以訪問目標域名(www.sina.com)的時候,DNS伺服器總是解析對應的IP地

JSP頁面訪問的時候的執行過程

當客戶端瀏覽器向伺服器發出訪問一個JSP頁面的請求時,伺服器根據該請求載入相應的JSP頁面,並對該頁面進行編譯,然後執行。JSP頁面的執行過程如下圖所示: 客戶端通過瀏覽器向伺服器發出請求,在該請求中包含了請求的資源的路徑,這樣當伺服器接收到該請求後就可以知道被請求的內

訪問jsp頁面執行過程

JSP頁面執行過程 JSP 頁面其實是一個Servlet。JSP 頁面是在JSP 容器中執行的。Servlet 容器一般也是JSP 容器。例如, Tomcat 就是一個Servlet/JSP 容器。 第一次請求一個JSP 頁面肘, Servlet/JSP 容器要做兩件事情:

jsp執行過程

png let 過程 服務 eight itl tle 轉譯 分享 JSP執行過程圖解 第一次請求: 當服務器上的一個JSP頁面被第一次請求執行時,服務器上的JSP引擎首先將JSP頁面文件轉譯成一個.java文件,也就是servlet,並編譯這個java文件生成.class

web頁面訪問過程

web 過程1,瀏覽器首先會查詢本機的系統,獲取主機名對應的IP地址。2,若本機查詢不到相應的IP地址,則會發起DNS請求,獲取主機名對應的IP地址。3,使用查詢到的IP地址,直接訪問目標服務器。  首先說說訪問目標地址的兩種方式:  第一,使用目標IP地址訪問。比如你可以直接在瀏覽器中輸入IP地址而直接訪問

Intellij Idea中Jsp頁面不能訪問靜態資源(圖片、js、css)

tex 文件夾 nbsp 依然 技術分享 很多 路徑 contex mage 最近在學習Spring MVC框架。用Intellij Idea編譯器開發出現了很多因為不了解編譯器配置的問題。 這次是在main.jsp頁面中圖片標簽<img src="images/on

jsp:通過Session控制登陸時間和內部頁面訪問

erro attr 行數 its text client fault pri getattr 一,通過session的關閉瀏覽器銷毀,和使用getAttribute設置session對象值來控制頁面用戶是否有權限進入。 1,以下是登陸頁面的代碼,使用表單提交數據給一個ser

jsp頁面執行原理及獲取上下文根方式

展示 第一次 使用 繼續 發現 釋放 包含 情況 文件 一、在一個JSP文件第一次被請求時,JSP引擎把該JSP文件轉換成為一個Servlet。而這個引擎本身也是一個Servlet。jsp實質是屬於後臺。它的執行過程如下: (1)JSP引擎先把該JSP文件轉換成一個Java

JSP檔案的執行過程

JSP檔案執行過程如下: 1)當一個jsp檔案第一次被訪問時,jsp引擎會將其轉譯為Java原始檔(Servlet),在轉譯過程中如果發現jsp有任何語法錯誤,轉譯將中斷,並向客戶端和服務端輸出錯誤資訊。 注:這個jsp引擎本身也是一個Servlet。 2)如果轉譯成功,jsp引擎通過j

jsp頁面中的程式碼執行載入順序

一.jsp頁面中的程式碼執行載入順序介紹 1. java是在伺服器端執行的程式碼,jsp在伺服器的servlet裡執行,而javascript和html都是在瀏覽器端執行的程式碼。所以載入執行順序是是java>jsp>js。 2. js在jsp中的載入順序 頁面上的

STS maven build 訪問 jsp頁面報錯

sts tool 沖突 鏈接 depend 解決 原創文章 src version STS 版本:spring-tool-suite-3.8.1.RELEASE-e4.6-win32-x86_64 maven版本:apache-maven-3.3.9 報錯信息如圖(圖片解

基於Resteasy框架下的jsp頁面訪問404錯誤

如圖,這是我的工程目錄結構,我嘗試訪問WebContent目錄下的index.jsp頁面; 後面在老師的幫助下,我學習到Resteasy框架下只會監聽class類等一些,不會去監聽html,jsp等檔案,所以要想讓Resteasy框架訪問到jsp,需修改web.xml裡面的servl

關於專案中的執行緒的堆疊詳細資訊,利用jsp頁面來實現。

在實際的專案中我們通過Thread.getAllStacktraces()方法進行檢視相關的資訊。這樣可以隨時方便的管理檢視程式中的執行緒的相關資訊 <%@ page language="java" contentType="text/html; charset=utf-8"