JSP
一.什麼是JSP
JSP全稱是Java Server Pages 是一種開發動態web資源的技術html
在原HTML上添加JAVA腳本,jsp=html+java代碼+jsp標籤java
二.JSP的原理
JSP基本原理:
JSP自己是一個特殊的Servlet(類,即萬物皆對象)
JSP第一次被訪問時,服務器會編譯成JAVA文件(這個JAVA實際上是Servlet類)
而後建立對象
調用對象的service()方法
(第一次懲罰,第一次會慢一點)
在tomcat的work的的對應jsp的.java文件(out.write(),java代碼原封不動web
JSP的真身其實是 Servlet,咱們訪問 index.jsp 時,其實是訪問它的真身 index_jsp 這個 Servlet瀏覽器
而且是經過_jspService()這個方法處理請求,這個方法中放了 html 和 java 代碼,全部java代碼原樣翻譯過來, html 代碼使用out.write("<標籤>"\r\n)向頁面輸出給瀏覽器tomcat
簡單的流程能夠概述爲服務器
找到.jsp文件 ——> 轉換爲 .java文件 ——> 編譯爲 .class文件 ——> 服務器執行之jsp
如果第二次訪問則直接找.class文件便可,如果進行了修改,則須要從新編譯佈局
三.基本語法
HTML代碼稱之爲模板元素,也就是網頁的骨架和佈局url
jsp3種java腳本spa
<%...%>【儘可能不要使用】
JAVA代碼片斷(方法內能夠寫的它均可以寫,例如調用方法等,但不能定義方法)
一個代碼段中聲明的變量,其它片斷能夠用
<%=...%>(out.print())
JAVA表達式 (經常使用於輸出)response.writer.print()裏面能放的,他都能放。注意不能輸出多個,即不能有分號
<%!...%>
聲明(做了解) 基本不用,但會被考慮到(類體中能夠放什麼,這裏就能夠放什麼)
jsp的註釋
<%-- --%>(編譯成java文件時自動忽略.java .class都沒有,客戶端看不見) ——jsp的註釋
<!-- -->(HTML的註釋,右鍵查看源代碼能夠看到)——HTML的註釋
// /**/ java的註釋,此註釋也是隱式的 ——JAVA的註釋
四.JSP指令
JSP指令(derictive)是用來告知引擎如何執行處理頁面的
JSP三大指令:
1.page指令:最複雜,能夠存在任意個指令
2.include指令:靜態包含
3.taglib指令:導入標籤庫
指令的格式:<%@ 指令 key="value" %>
詳細及九大對象,七大動做參見:https://blog.csdn.net/u010897406/article/details/49618413