標籤:格式 語言 服務 輸出資料流 set print lib java java代碼
JSP的本質是一個類檔案,它儲存於tomcat(如果你使用tomcat)目錄下的work檔案夾中,該類檔案繼承了HttpJspBase類,而HttpJspBase類繼承了HttpServlet類,所以其實質是一個servlet的類檔案
JSP指令碼:
1)<%java代碼%> ----- 內部的java代碼翻譯到service方法的內部
2)<%=java變數或運算式%> ----- 會被翻譯成service方法內部out.print()
3)<%!java代碼%> ---- 會被翻譯成servlet的成員的內容
java注釋:
1)Html注釋:<!--注釋內容--> ---可見範圍 jsp源碼、翻譯後的servlet、頁面顯示html源碼
2)java注釋://單行注釋 /*多行注釋*/ --可見範圍 jsp源碼 翻譯後的servlet
3)jsp注釋:<%--注釋內容--%> ----- 可見範圍 jsp源碼可見,安全性更高
java輸出:
response和<%= 參數>輸出,response輸出更快,因為程式會先去讀取response的緩衝再把<%= 參數>輸出讀取到response緩衝中去讀,
out緩衝預設大小為8kb,可以以page指令的buffer設定,如果設為0,則response的輸出資料流和out輸出資料流按正常排序的先後順序輸出。
三大指令:
page的指令:在頁面開發中是預設的,格式;<%@ page 屬性名稱1= "屬性值1" 屬性名稱2= "屬性值2" ...%>
language:jsp指令碼中可以嵌入的語言種類
pageEncoding:當前jsp檔案的本身編碼---內部可以包含contentType(寫了它不用再寫下面的了)
contentType:response.setContentType(text/html;charset=UTF-8)
session:是否jsp在翻譯時自動建立session
import:匯入java的包
errorPage:噹噹前頁面出錯後跳轉到哪個頁面
isErrorPage:當前頁面是一個處理錯誤的頁面
include的指令:
頁面靜態包涵,將一個jsp檔案寫到另一個jsp檔案
<%@ include file="被包涵的檔案地址” %>
靜態頁麵包涵內容以代碼的形式寫進jsp檔案中,動態頁面是寫入的地址,把要包涵檔案地址寫進去
動態; 頁麵包含(動態包含):<jsp:include page="被包含的頁面"/>
taglib指令:
在jsp頁面中引入標籤庫(jstl標籤庫、struts2標籤庫)
格式:<%@ taglib uri="標籤庫地址" prefix="首碼"%>
java9大隱式對象
out-------輸出資訊
request---------頁面的請求
respose-------用戶端的回複
apploaction--------web環境內容對象(servletcontext)
session---------伺服器儲存資訊
config-----------伺服器配置,可以獲得初始化配置
exception----在jsp錯誤頁面的異常
page-----------指當前頁轉換後serlet的執行個體
pagecontext------jsp頁面的容器,範圍
servlet有3個範圍,applocation,request,session
jsp裡有4個範圍 ,applocation,request,session,pagecontext
application:範圍整個web應用
request:範圍一次請求
session:範圍一次會話
pagecontex:範圍jsp頁面
pagecontent範圍和其他範圍方法基本一致,有個新方法
findAttribute(String name)
依次從pageContext域,request域,session域,application域中獲取屬性,在某個域中擷取後將不在向後尋找
JAVA jsp技術