參考書籍:《J2EE開源編程精要15講》
JSP(Java Server Page)頁面由HTML代碼和嵌入其中的Java代碼組成。
簡單的JSP頁面如:
1 <html>2 <body>3 <%4 out.View CodeJSP頁面一般包括JSP指令、JSP腳本元素、JSP標準動作,以及JSP隱式對象
JSP指令
1) page指令
定義一些屬性,用來通知Servlet引擎有關JSP的一些設置,主要為:
language屬性:編寫JSP頁面時用的腳本語言,如:Java語言 <%@ page language="java" %>
contentType屬性:應答MIME類型(多用途互聯網郵件擴展類型,是設定某種擴展名的文件用一種應用程序來打開的方式類型),
如:<%@ page contentType="text/html;charset=GB2312" %> charset設置頁面字符類型
pageEncoding屬性:jsp本身頁面文件的編碼,如:<%@ page pageEncoding="utf-8" %>
與contentType屬性的區別:http://smiky.VEvb.com/blog/894938
import屬性:引入軟件包或類,如:<%@ page import="java.io.*;java.util.*" %>
session屬性:指定JSP頁面會話的可用性,默認為true,如:<%@ page session="false" %>
isErrorPage屬性:指定當前頁面是否用作JSP錯誤頁面,默認為false,如:<%@ page isErrorPage="true" %>
errorPage屬性:設置錯誤頁,發生未處理的頁異常重定向到該設置頁,與isErrorPage屬性配合使用,
如:<%@ errorPage="error.jsp" %>
使用示例:http://www.tojsp.com/jsp/how-to-use-jsp-error-page.html
2) include指令
指出編譯JSP頁面時要插入的文件名(相對路徑),所包括的文件內容成為JSP頁面的一部分??捎糜诓迦攵囗撁婀玫拇a,
如:在JSP頁面中包括頭文件(header.html) <%@ include file="header.html" %>
3) taglib(標記庫)指令
在JSP頁面引入該頁面所要用到的標記庫資源,如:<%@ taglib prefix="s" uri="/struts-tags" %>
JSP腳本元素
1) JSP聲明
定義JSP頁面級變量與方法。聲明語句放在<%!與%>標記內,總以分號結尾,如:
<%!
private int x=0;
%>
2) JSP表達式
直接插入值到輸出,如:<%=Math.PI%>
3) JSP代碼段
包括在<%與%>標記內的有效代碼片段,如:
1 <html>2 <body>3 <%! int i=0; %>4 <% i++; %>5 The result is:<%=i %>6 </body>7 </html>View Code
JSP標準動作
1) forward動作 <jsp:forward>
提交請求給不同頁面,如:
<jsp:forward page="another.jsp">
<jsp:param name="user" value="Tom" />
</jsp:forward>
<jsp:param>用以傳遞附加請求參數,name屬性指出參數名,value屬性指出參數值
2) include動作<jsp:incluse>
插入文件到特定JSP頁面,此文件包含在請求JSP頁面時刻,如:
<jsp:include page="one.html" flush="true" />
page屬性給出要包含頁面的相對路徑,flush屬性指出緩沖區是否沖洗
與include指令區別:
include指令:只能合并靜態頁面或文檔內容
include動作:可包括動態生成的輸出結果
3) useBean動作<jsp:useBean>
尋找與裝入現有JavaBean,如:
1 <%@ page language="java" %> 2 <html> 3 <body> 4 <jsp:useBean id="mybean" class="com.kate.SimpleBean" scope="session" /> 5 <jsp:setProperty name="mybean" property="name" value="Bill" /> 6 <p> 7 <jsp:getProperty name="mybean" property="age" /> 8 </p> 9 </body>10 </html>View Codeid屬性定義唯一標識Bean的實例,class屬性指出要實現的Bean對象的類,scope屬性指出Bean的使用范圍(page、session、application)
4) JSP的隱式對象
包含在JSP表達式與代碼段的某些預定義變量:request、response、out、session、application、config、page、pageContext、exception。
新聞熱點
疑難解答