JSP
語法包括以下內容
JSP指令
JSP聲明
Java程序片段(Scriptlet)
Java表達式
JSP隱含對象
JSP
指令
JSP
指令包括在<%@
和%>
中,用來設置和整個JSP
頁面相關的屬性一般語法形式
<%@ 指令名 屬性=”值” %>
常用的指令有三種:
page
、include
、taglib
page
指令
屬性 描述 舉例 language 指定當前文件使用的編程語言,目前只有java是有效的 <%@ page language=”java” %> method 指定java程序片段所屬的方法名稱,有三個有效值:doPost,doGet,service.默認是serice <%@ page method=”doGet” %> import 指定導入的java包 <%@page import=”java.io.File %>” content_type 指定響應結果的 MIME
類型,默認爲test/html
,編碼方式爲ISO-8859-1
<%@page content_type=”text/html;charset=utf-8” %> session 指定 JSP
頁面是否使用Session
,默認爲true
<%@page session=”false” %> errorPage 指定發生異常時,客戶請求要轉到哪個頁面 <%@page errorPage=”err.jsp” %> isErrorPage 表示此Jsp是否是處理異常的頁面,值只能是 true
或false
<%@page isErrorPage=”true” %> include
指令
- 用於包含其它文件,內容可以是
JSP
或HTML
文件 - 語法:
<%@ include file = “被包含文件的URL” %>
- 用於包含其它文件,內容可以是
taglib
就先不展開講,留待以後補充……
JSP
聲明
- 含義
- 所有在
<%!
和%>
之間聲明的變量,方法都作爲JSP
對應的Servlet
的成員變量和成員方法
- 所有在
例子
<%!
int i;
float f;
double d;
public void max(int i, int j) {
return i > j ? i : j;
}
%>
- 以上變量
i
,j
,d
方法max()
都是實例變量和實例方法
- 以上變量
Java
程序片段
- 在
<%
和%>
之間可以嵌入任何有效的Java
程序代碼
Java
表達式
- 在
<%=
和%>
之間嵌入的Java
表達式會被當做字符串輸出到網頁上 例子:
<%= “Hello”%>
隱含對象
- 每個
JSP
文件固有的對象 - 每個對象都是局部變量,被定義在
JSP
的service()
方法中 - 這些對象一共有九個
隱含對象與其類型如下表
對象 類型 request javax.servlet.HttpServletRequest response javax.servlet.HttpServletresponse pageContext javax.servlet.jsp.PageContext application javax.servlet.ServletContext out javax.servlet.jsp.JspWriter config javax.servlet.ServletConfig page java.lang.Object(相當於於this關鍵字) session javax.servlet.HttpSession exception java.lang.Exception 以上對象的使用和
Servlet
中的對象差不多,這裏就不多講,等和下篇Servlet
一起講解
註釋問題
JSP
文件中可以使用HTML
註釋、’Java’註釋和JSP
註釋三種Java
註釋只能用在JSP
的標記<%
和%>
中,編譯時,會被直接忽略HTML
只能用在JSP
的標記<%
和%>
外,並且,註釋不會被忽略,在響應客戶端時,仍然會把註釋一起發送給瀏覽器,通過瀏覽器的查看源碼可以看出JSP
註釋也只能用在JSP
的標記<%
和%>
外,並且會被忽略,也就是在響應客戶端請求時,不會把註釋發送給瀏覽器