JSP基礎知識點總匯
一 概述
1.什麼是JSP?
Java Server Pages,伺服器端負責頁面展示的技術,可以巢狀java語言,以取代使用Servlet產生頁面的方式,底層被轉換為Servlet 。
二路徑
1.絕對路徑
依靠自身就能唯一確定資源的路徑,內容上以協定開頭,如在HTTP請求中以http開頭。
2.相對路徑
必須依賴其他路徑才能唯一確定資源的路徑,內容上不以協定開頭。
3.資源路徑構成
訪問路徑+資源名稱,資源名稱是最後一個「/」後面的內容,其餘是訪問路徑。
4.WEB-INF路徑
# 放在WEB-INF目錄下的資源只能透過程式轉發訪問,無法透過瀏覽器直接訪問,比較安全。重定向執行時是將位址發給瀏覽器,由瀏覽器發出請求,因此程式內部的重新導向也無法直接存取WEB-INF目錄下的資源。
在WEB-INF目錄下的資源內部只能採用相對於伺服器的路徑,不能採用相對於目前資源存取路徑的路徑,即只能採用以下路徑形式:
${pageContext.request.contextPath}/xxx
5.重定向路徑
#所有的重定向只能採用相對於伺服器的路徑形式,因為重定向可以存取其他項目中的資源,路徑的起點是伺服器。根據網址列位址的變化,HTML頁面、JSP頁面中的所有請求都可以看做重定向,所有的路徑都必須採用相對於伺服器的形式。
6.轉送路徑
所有的轉送只能採用相對於專案的路徑形式,因為轉送只能存取同一專案內的資源。
三指令標識
用於設定在整個JSP頁面內都有效的訊息,指令標識的語法格式:
<%@ tagName attr="value"...%>
JSP中有三種指令標識:
1.page
##主要用到的屬性有:
contentType:設定頁面的MIME型別與編碼方式。
isErrorPage:將頁面設定為錯誤處理頁面,通常與內建物件exception結合使用,用來處理另一個頁面的錯誤訊息。
errorPage:為頁面指定錯誤處理頁面,當頁面執行出現錯誤時,跳到指定頁面。
2.include
#<%@ include file="path"%>
靜態包含,用於將一個JSP頁麵包含在當前頁面中。所謂靜態包含指的是,被包含的JSP頁面原樣呈現在包含頁面中,與包含頁麵生成同一Servlet。
3.taglib
<%@ taglib prefix="c"uri=""%>
用於引入標籤庫到目前頁面,使用指定的前綴來引用標籤庫中的標籤。
四動作標識
JSP中有3個動作標識:
1.< ;jsp:include>
動態包含,用於將一個JSP頁麵包含在目前頁面中。所謂動態包含指的是,被包含頁經編譯後呈現在目前頁面中,包含頁面與被包含頁面各自產生一個Servlet。
2.
#<jsp:forward page="url"/>
3.
#<jsp:param name="paramName"value="paramValue>
登入後複製
<jsp:param name="paramName"value="paramValue>
與
五九大內建物件
# request:用於取得請求訊息,例如請求參數及客戶端訊息。
response:用於回應客戶端請求。
out:用於輸出回應訊息。
session:代表瀏覽器與伺服器的一次會話。 HTTP協議是無狀態協議,回應結束後,會話終斷,不會保存會話訊息,session
就是為了保存會話資訊產生的。
application:代表應用程序,主要用於保存整個應用層面的資訊。
page:代表目前頁面。
pageContext:頁面上下文,透過該對象可以取得其他對象,例如request/session/application等。
config:用於取得伺服器的設定訊息,初始化Servlet。
exception:用於取得頁面的錯誤訊息。
六java程式碼
# 在JSP頁面可以插入java程式碼,插入的3種形式:
<%! xxxxxx %>:宣告程式碼區塊,用於宣告全域變數或方法。
<% xxxxx %>:java程式碼區塊,可以在其中編寫任何java程式碼,該程式碼區塊最終被編寫在方法中。
<%= xxxxx %>:輸出程式碼區塊,用於向JSP頁面輸出內容。
JSP的改進:
1)JSP是標籤式的文字檔案(Servlet是Java檔案)
2)JSP不需要編譯(其實是由伺服器監控JSP檔案的變化,再將其翻譯成Servlet 程式碼)
伺服器進行編譯並在第一次要求時創建一個Servlet實例。所以,第一次造訪JSP頁面時會後延遲
3)JSP不用寫設定檔
4)JSP以靜態程式碼為主,Java程式碼為輔。 Servlet反之。
5)是J2EE藍圖的一部份(Servlet、JSP以及EJB是J2EE的三大元件)
JSP本質上來說核心或Servlet,但與Servlet不是替代關係而是一種互補的關係。
JSP適合於寫入顯示層的動態頁面,而Servlet則適合寫入控制層的業務控制(頁面轉送)。
JSP往純標籤方向發展,Servlet往純程式碼方向發展,他們以Servlet核心(請求響應式的工作方式)往兩個方向發展。
以上是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)

如何使用WebSocket和JavaScript實現線上語音辨識系統引言:隨著科技的不斷發展,語音辨識技術已成為了人工智慧領域的重要組成部分。而基於WebSocket和JavaScript實現的線上語音辨識系統,具備了低延遲、即時性和跨平台的特點,成為了廣泛應用的解決方案。本文將介紹如何使用WebSocket和JavaScript來實現線上語音辨識系

WebSocket與JavaScript:實現即時監控系統的關鍵技術引言:隨著互聯網技術的快速發展,即時監控系統在各個領域中得到了廣泛的應用。而實現即時監控的關鍵技術之一就是WebSocket與JavaScript的結合使用。本文將介紹WebSocket與JavaScript在即時監控系統中的應用,並給出程式碼範例,詳細解釋其實作原理。一、WebSocket技

Linux下system()函數的總結在Linux系統中,system()函數是一個非常常用的函數,它可以用來執行命令列指令。本文將對system()函數進行詳細的介紹,並提供一些特定的程式碼範例。一、system()函數的基本用法system()函數的聲明如下:intsystem(constchar*command);其中,command參數是一個字符

如何利用JavaScript和WebSocket實現即時線上點餐系統介紹:隨著網路的普及和技術的進步,越來越多的餐廳開始提供線上點餐服務。為了實現即時線上點餐系統,我們可以利用JavaScript和WebSocket技術。 WebSocket是一種基於TCP協定的全雙工通訊協議,可實現客戶端與伺服器的即時雙向通訊。在即時線上點餐系統中,當使用者選擇菜餚並下訂單

如何使用WebSocket和JavaScript實現線上預約系統在當今數位化的時代,越來越多的業務和服務都需要提供線上預約功能。而實現一個高效、即時的線上預約系統是至關重要的。本文將介紹如何使用WebSocket和JavaScript來實作一個線上預約系統,並提供具體的程式碼範例。一、什麼是WebSocketWebSocket是一種在單一TCP連線上進行全雙工

JavaScript和WebSocket:打造高效的即時天氣預報系統引言:如今,天氣預報的準確性對於日常生活以及決策制定具有重要意義。隨著技術的發展,我們可以透過即時獲取天氣數據來提供更準確可靠的天氣預報。在本文中,我們將學習如何使用JavaScript和WebSocket技術,來建立一個高效的即時天氣預報系統。本文將透過具體的程式碼範例來展示實現的過程。 We

JavaScript教學:如何取得HTTP狀態碼,需要具體程式碼範例前言:在Web開發中,經常會涉及到與伺服器進行資料互動的場景。在與伺服器進行通訊時,我們經常需要取得傳回的HTTP狀態碼來判斷操作是否成功,並根據不同的狀態碼來進行對應的處理。本篇文章將教你如何使用JavaScript來取得HTTP狀態碼,並提供一些實用的程式碼範例。使用XMLHttpRequest

用法:在JavaScript中,insertBefore()方法用於在DOM樹中插入一個新的節點。這個方法需要兩個參數:要插入的新節點和參考節點(即新節點將要插入的位置的節點)。
