對JSP(Java Server Pages)的一些理解

来源:https://www.cnblogs.com/zhuyankang/archive/2023/04/18/17331740.html
-Advertisement-
Play Games

JSP全名為Java Server Pages,java伺服器頁面。JSP是一種基於文本的程式,其特點就是HTML和Java代碼共同存在!JSP是為了簡化Servlet的工作出現的替代品,Servlet輸出HTML非常困難,JSP就是替代Servlet輸出HTML的。JSP本身就是一種Servlet ...


        JSP全名為Java Server Pages,java伺服器頁面。JSP是一種基於文本的程式,其特點就是HTML和Java代碼共同存在!JSP是為了簡化Servlet的工作出現的替代品,Servlet輸出HTML非常困難,JSP就是替代Servlet輸出HTML的JSP本身就是一種Servlet。為什麼我說JSP本身就是一種Servlet呢?其實JSP在第一次被訪問的時候會被編譯為HttpJspPage類(該類是HttpServlet的一個子類)。

        編譯過程是這樣子的:瀏覽器第一次請求1.jsp時,Tomcat會將1.jsp轉化成1_jsp.java這麼一個類,並將該文件編譯成class文件。編譯完畢後再運行class文件來響應瀏覽器的請求。以後訪問1.jsp就不再重新編譯jsp文件了,直接調用class文件來響應瀏覽器。當然了,如果Tomcat檢測到JSP頁面改動了的話,會重新編譯的。

        說到底,JSP就是封裝了Servlet的java程式罷了,JSP的本質其實就是Servlet。只是JSP當初設計的目的是為了簡化Servlet輸出HTML代碼。我們一般的模式是:在Servlet處理好的數據,轉發到JSP,JSP只管對小部分的數據處理以及JSP本身寫好的頁面。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 在Vue3中,路由的基本配置是通過使用Vue Router庫來實現的。以下是Vue3中路由的基本配置步驟: 安裝Vue Router 使用npm或yarn在項目中安裝Vue Router: npm install vue-router // 或者 yarn add vue-router 創建路由實例 ...
  • 在Vue3中,計算屬性可以使用computed函數來定義。 computed函數接受兩個參數:第一個參數是一個函數,該函數返回計算屬性的值;第二個參數是一個可選的配置對象,可以包含getter和setter函數,以及控制計算屬性緩存的緩存配置。 Vue3中的計算屬性與Vue2中的計算屬性相比有以下幾 ...
  • 拉去遠程分支代碼報錯:fatal: refusing to merge unrelated histories造成的原因是: 1、本地項目copy 其他項目的結構把.git 文件可拷貝過來了 且覆蓋了自己當前目錄的 .git 文件,然後將當前分支合遠程分支合併 因為兩個 .git 文件儲存庫的歷史數 ...
  • 後臺管理系統在實際開發中,表格如果在一定高度出現滾動條。 這時如果對錶格行數據進行編輯或者拖拽排序操作,數據刷新後滾動條會預設回到頂部,這樣體驗會不太好。 如果想保留在當前位置可以這樣操作: 1.el-table標簽添加ref屬性 <el-table :data="tableData" v-load ...
  • #經典的單件模式 public class Singleton { private static Singleton uniqueInstance; //一個靜態變數持有Singleton類的唯一實例。 // 其他有用的實例變數寫在這裡 //構造器聲明為私有,只有Singleton可以實例化這個類! ...
  • 軟體工程的方方面面都遵循一個最基本的道理:沒有銀彈,架構分層模型更是如此,每一種都有各自優缺點,所以請根據不同的業務場景,並遵循簡單、可演進這兩個重要的架構原則選擇合適的架構分層模型即可。 ...
  • HOOPS Communicator在2021版本中,推出了基於PBR(Physically Based Rendering)的渲染特性以提供更高質量的渲染技術。 PBR將材料表示為一系列方程,這些方程對光如何從錶面反射進行建模,再通過GPU上運行的著色器代碼進行有效地實現。 一、工程領域可視化問題 ...
  • L2-3 智能護理中心統計 智能護理中心系統將轄下的護理點分屬若幹個大區,例如華東區、華北區等;每個大區又分若幹個省來進行管理;省又分市,等等。我們將所有這些有管理或護理功能的單位稱為“管理結點”。現在已知每位老人由唯一的一個管理結點負責,每個管理結點屬於唯一的上級管理結點管轄。你需要實現一個功能, ...
一周排行
    -Advertisement-
    Play Games
  • 前言 本文介紹一款使用 C# 與 WPF 開發的音頻播放器,其界面簡潔大方,操作體驗流暢。該播放器支持多種音頻格式(如 MP4、WMA、OGG、FLAC 等),並具備標記、實時歌詞顯示等功能。 另外,還支持換膚及多語言(中英文)切換。核心音頻處理採用 FFmpeg 組件,獲得了廣泛認可,目前 Git ...
  • OAuth2.0授權驗證-gitee授權碼模式 本文主要介紹如何筆者自己是如何使用gitee提供的OAuth2.0協議完成授權驗證並登錄到自己的系統,完整模式如圖 1、創建應用 打開gitee個人中心->第三方應用->創建應用 創建應用後在我的應用界面,查看已創建應用的Client ID和Clien ...
  • 解決了這個問題:《winForm下,fastReport.net 從.net framework 升級到.net5遇到的錯誤“Operation is not supported on this platform.”》 本文內容轉載自:https://www.fcnsoft.com/Home/Sho ...
  • 國內文章 WPF 從裸 Win 32 的 WM_Pointer 消息獲取觸摸點繪製筆跡 https://www.cnblogs.com/lindexi/p/18390983 本文將告訴大家如何在 WPF 裡面,接收裸 Win 32 的 WM_Pointer 消息,從消息裡面獲取觸摸點信息,使用觸摸點 ...
  • 前言 給大家推薦一個專為新零售快消行業打造了一套高效的進銷存管理系統。 系統不僅具備強大的庫存管理功能,還集成了高性能的輕量級 POS 解決方案,確保頁面載入速度極快,提供良好的用戶體驗。 項目介紹 Dorisoy.POS 是一款基於 .NET 7 和 Angular 4 開發的新零售快消進銷存管理 ...
  • ABP CLI常用的代碼分享 一、確保環境配置正確 安裝.NET CLI: ABP CLI是基於.NET Core或.NET 5/6/7等更高版本構建的,因此首先需要在你的開發環境中安裝.NET CLI。這可以通過訪問Microsoft官網下載並安裝相應版本的.NET SDK來實現。 安裝ABP ...
  • 問題 問題是這樣的:第三方的webapi,需要先調用登陸介面獲取Cookie,訪問其它介面時攜帶Cookie信息。 但使用HttpClient類調用登陸介面,返回的Headers中沒有找到Cookie信息。 分析 首先,使用Postman測試該登陸介面,正常返回Cookie信息,說明是HttpCli ...
  • 國內文章 關於.NET在中國為什麼工資低的分析 https://www.cnblogs.com/thinkingmore/p/18406244 .NET在中國開發者的薪資偏低,主要因市場需求、技術棧選擇和企業文化等因素所致。歷史上,.NET曾因微軟的閉源策略發展受限,儘管後來推出了跨平臺的.NET ...
  • 在WPF開發應用中,動畫不僅可以引起用戶的註意與興趣,而且還使軟體更加便於使用。前面幾篇文章講解了畫筆(Brush),形狀(Shape),幾何圖形(Geometry),變換(Transform)等相關內容,今天繼續講解動畫相關內容和知識點,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 什麼是委托? 委托可以說是把一個方法代入另一個方法執行,相當於指向函數的指針;事件就相當於保存委托的數組; 1.實例化委托的方式: 方式1:通過new創建實例: public delegate void ShowDelegate(); 或者 public delegate string ShowDe ...