JSP總結摘要

一 概述

1.什麼是JSP?

Java Server Pages,服務器端負責頁面展現的技術,能夠嵌套java語言,以取代使用Servlet生成頁面的方式,底層被轉化爲Servlet。java

二 路徑

1.絕對路徑

依靠自身就能惟一肯定資源的路徑,內容上以協議開頭,如在HTTP請求中以http開頭。瀏覽器

2.相對路徑

必須依賴其餘路徑才能惟一肯定資源的路徑,內容上不以協議開頭。安全

3.資源路徑構成

訪問路徑+資源名稱,資源名稱是最後一個「/」後面的內容,其他是訪問路徑。服務器

4.WEB-INF路徑

放在WEB-INF目錄下的資源只能經過程序轉發訪問,沒法經過瀏覽器直接訪問,比較安全。重定向執行時是將地址發給瀏覽器,由瀏覽器發出請求,所以程序內部的重定向也沒法直接訪問WEB-INF目錄下的資源。
在WEB-INF目錄下的資源內部只能採用相對於服務器的路徑,不能採用相對於當前資源訪問路徑的路徑,即只能採用以下路徑形式:session

${pageContext.request.contextPath}/xxx

5.重定向路徑

全部的重定向只能採用相對於服務器的路徑形式,由於重定向能夠訪問其餘項目中的資源,路徑的起點是服務器。根據地址欄地址的變化,HTML頁面、JSP頁面中的全部請求均可以看作重定向,全部的路徑均必須採用相對於服務器的形式。app

6.轉發路徑

全部的轉發只能採用相對於項目的路徑形式,由於轉發只能訪問同一項目內的資源。jsp

三 指令標識

用於設定在整個JSP頁面內都有效的信息,指令標識的語法格式:編碼

<%@ tagName attr="value"...%>

JSP中有三種指令標識:url

1.page

主要用到的屬性有:spa

  • 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>

<jsp:forward page="url"/>

用於頁面跳轉。

3.<jsp:param>

<jsp:param name="paramName"value="paramValue>

與<jsp:forward>標識結合使用,用於在頁面跳轉時傳遞請求參數。

五 九大內置對象

  • 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頁面輸出內容。
相關文章
相關標籤/搜索