1. 程式人生 > 其它 >JSP Cheat Sheet - JavaWeb基礎學習速查表

JSP Cheat Sheet - JavaWeb基礎學習速查表

JavaWeb學習速查表

整理JavaWeb學習中遇到的問題以及筆記,按分類編排

JSP基本語法 指令標識 - 指令碼標識 - JSP註釋 - 動作標識

JSP內建物件 JSP內建物件

JSP中的TAG檔案與標記 Tag - Tag建立與呼叫

JSP與JavaBean

Java Servlet

MVC

JSP連線資料庫


指令標識

指令標識用於設定整個JSP頁面範圍內都有效的相關資訊,是被伺服器解析執行的,不會產生任何內容輸出到網頁,對瀏覽器不可見。

<%@ 指令名 屬性1="屬性值1" 屬性2="屬性值2" …… %>
<%@ page pageEncoding="utf-8" import="java.util.Date,java.text.SimpleDateFormat" %>

指令名:

page

page 是JSP頁面最常用的指令,用於定義整個JSP頁面的相關屬性,這些屬性在被解析成Servlet時會轉化位想要的Java程式碼,page一共有15個屬性。

  • language 屬性 設定JSP頁面語言,目前只有Java
  • extends 屬性 設定頁面繼承的Java類,不常用
  • import 屬性 設定JSP匯入的類包(Java程式碼在呼叫API時,需要匯入相應的類包)
  • pageEncoding 屬性 定義JSP頁面的編碼格式,指定檔案編碼
  • contentType 屬性 設定JSP頁面的MIME型別和字元編碼
  • session 屬性 設定是否使用http的session繪畫,bool型別
  • buffer 屬性 設定JSPout輸出物件的緩衝區,預設8k,單位kb,建議8的倍數
  • autoFlush 屬性 時間頁面緩衝自動重新整理,bool型別
  • isErrorPage 屬性 設定當前JSP頁面為錯誤頁面,bool型別
  • errorPage 屬性 指定錯誤頁面

include

include指令可以在一個JSP頁面中包含另一個JSP頁面,不過該指令時靜態包含,被包含檔案中內容會原樣包含到JSP頁面,無法編譯執行JSP程式碼。

語法:

include指令語法為<%@ include file="paht" %>

taglib

taglib指令表示宣告該頁面中所使用的標籤庫,同時引用標籤庫,並指定標籤字首。在頁面中引用標籤庫後,就可以通過字首來引用標籤庫中的標籤。

語法:

<% taglib prefix="tagPrefox" uri="tagURI" %> eg:JSTL核心標籤庫 <% taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>


指令碼標識

在JSP頁面中,指令碼標識能夠方便靈活的生產頁面中的動態內容,特別是Scriptlet指令碼程式。JSP指令碼標識包括3部分,JSP表示式(Expression),宣告識別符號(Declaration),指令碼程式(Scriptlet)。

JSP表示式

<%= 表示式 %> 引數說明:表示式可以是任何Java語言的完整表示式,該表示式的最終運算結果將被轉換為字串。

注意:<%=之間不可以有空格

eg:

<%String manager="mr";%>
管理員:<%=manager%>             //輸出 管理員:mr

JSP表示式不僅可以插入到網頁文字中,用於輸出內容,也可以插入到HTML標記中,設定動態屬性。

宣告標識

宣告標識用於在JSP頁面中定義全域性的變數或方法。通過宣告標識定義的變數和方法可以被整個JSP頁面訪問。

說明:伺服器執行JSP頁面時,會將JSP頁面轉換為Servlet類,在該類中會把使用JSP宣告標識定義的變數和方法轉換為類的成員變數和方法。

語法:

<%! 宣告變數或方法的程式碼 %>

注意:<%!之間不可以有空格,程式碼塊可以換行

程式碼片段

在JSP頁面中嵌入的Java程式碼或是指令碼程式碼。通常用於頁面輸出內容,處理請求和響應,訪問session會話

語法:

<% 宣告變數或方法的程式碼 %>

注意:區別於程式碼片段,沒有!

註釋

JSP頁面由HTML,JSP,JAVA指令碼等組成,所以在其中可以使用多種註釋格式。

HTML註釋

HTML語言的註釋不會被顯示在網頁中,但是會顯示在網頁原始碼中

語法:

//註釋文字

JSP表示式註釋

在JSP頁面中可以嵌入程式碼片段,在程式碼片段中也可以加入註釋。

單行註釋語法:

//註釋文字

多行註釋語法:

/*
 *註釋文字
 *註釋文字
 *每行內容前的*為了美觀對其,可以不用
 */

提示文件註釋

/*
  提示資訊
  會被Javadoc文件工具生成文件時讀取
 */

隱藏註釋

HTML型別註釋會被解析到HTML原始碼中,為了安全,可以使用JSP的隱藏註釋,只有在JSP原始碼中檢視,不會解析到HTML。

語法:

<%-- 註釋內容 --%>

動態註釋

由於HTML註釋對於JSP嵌入程式碼不起作用,可以使用他們的組合構成動態HTML註釋文字。

eg:<!--<%=new Date()%> -->


動作標識

動作標識一共有三種,分別是include包含檔案標識,forward請求轉發標識,param傳遞引數標識。

包含檔案標識

用於向當前頁面中包含其他的檔案,被包含的檔案可以時動態或者靜態檔案。

語法:

<jsp:include page="url" flush="false|true">
  // 子動作標識<jsp:param>
</jsp:include>

引數說明:

  • page:用於指定被包含檔案的相對路徑
  • flush:可選屬性,用於設定是否重新整理快取區
  • <jsp:param>:子動作標識,用於向被包含的動態頁面中傳遞引數

注意:

  • 區別於include指令通過file屬性指定被包含的檔案,並且file屬性不支援任何表示式,<jsp:include>動作標識通過page屬性指定被吧汗的檔案,而且page屬性支援jsp表示式。
  • include指令被包含的檔案內容會原封不動的插入到包含頁中,然後再便宜成一個最終java檔案,<jsp:include>動作標識包含檔案時,當該標識被執行時,程式會將請求轉發到被包含的頁面,會分別編譯。
  • include中的變數名和方法名不允許衝突,<jsp:include>分別編譯,不衝突

請求轉發標識

通過<jsp:forward>動作標識,可以將請求轉發到其他的web資源,例如一個jsp頁面,html頁面,servlet燈,執行請求轉發後,當前頁面將不再被執行,二是去執行該標識指定的目標頁面.

<jsp:forward page="url">
  // 子動作標識<jsp:param>
</jsp:forward>

引數說明:

  • page:用於指定請求轉發的目標頁面,可以是檔案路徑,也可以是是檔案路徑的jsp表示式,但限制當前應用中的資源
  • <jsp:param>:子動作標識,用於向被包含的動態頁面中傳遞引數

傳遞引數標識

JSP的動作標識<jsp:param>可以作為其他標識的子標識,用於其他標識傳遞引數。

<jap:param name = "userId" value="7" />

注意: 通過<jsp:param>動作標識指定的引數,將以“引數名=值”的形式加入到請求中,與在檔名後面直接加?引數名=值是相同的。