JSP基本語法原理
阿新 • • 發佈:2018-12-19
JSP的由來 Servlet技術產生以後,在使用時最麻煩的是使用大量的out.print語句輸出頁面,這樣的形式在系統變更,維護,預覽效果時都不能方便快捷的完成任務,於是推出JSP這種技術,用來將Servlet中負責顯示的語句抽取出來. 語法規則:<%=…%> 合法內容:變數,變數加運算子組合的表示式,有返回值的方法 轉譯成Servlet時的規則:在Service()方法中用out.print語句輸出改變數,表示式,方法的值
<p> The square root of 5 is<%=Math.sqrt(5)%></p> 轉換成 out.write("<p> The square root of 5 is"); out.print(Math.sqrt(5)); out.write("</p>");
語法規則:<%......%>
合法內容:能夠寫在方法裡的Java程式碼片段都可以作為小指令碼
轉譯成Servlet時的規則:原封不動稱為Servlet類的Service()方法裡的一段程式碼
<% String name = request.getParameter("name"); if(name != null && !name.equals("")){ %> <p> Your name is<%=name%></p> <% } %> 轉換成下面程式碼插入到service方法中 String name = request.getParameter("name"); if(name != null && !name.equals("")){ out.write("<p> Your name is "); out.print(name); out.write("</p>"); }
語法規則:<%!......%>
合法內容:成員屬性後成員方法的宣告
轉譯成Servlet時的規則:成為JSP頁面轉成的Servlet類中成員屬性或成員方法
<%!
public String getResult(){
//....
}
%>
將程式碼整體插入到Servlet類中
public class Index_JSP extends JSPBase{
public String getResult(){
//...
}
public void service()...
}
語法規則:<%@指令名 屬性=值%> 常用指令:page指令 include指令 taglib指令 作用:控制JSP在轉譯成Servlet類時生成的內容
Page指令(用於導包,設定頁面屬性)
<%@page import = "java.util.*" %>
設定response.setContectType()方法的引數值
<%@page contentType = image/gif%>
設定容器讀取該檔案時的解碼
<%@page pageEncoding = "UTF-8"%>
Include指令(在JSP頁面轉換成Servlet時,能夠將其他檔案包含進來.可以包含JSP檔案也可以是靜態的HTML檔案)
<%@ include file = "header.html" %>
JSP頁面的隱含物件
JSP如何執行
JSP如何轉換成Java
如何將靜態頁面轉換成動態頁面