jsp介紹
什麽是jsp?
本質是一個servlet,是一種動態網頁的開發技術,它可以使用jsp標簽在html網頁中插入java代碼
格式:格式<% %>
jsp的執行原理
1、翻譯階段,將jsp文件翻譯成java文件
2、編譯階段,將java文件編譯成class文件
3、執行階段,將class就插入到html頁面職工,並且返回給瀏覽器
jsp腳本
<% java代碼 %>: java代碼
<%= java代碼或者數據 %> 在網頁上輸出
<%! %> 定義成員(成員變量 成員方法)
eg:循環打印表格
<table border="1px" width="80%">
<tr>
<td>name</td>
<td>age</td>
<td>gender</td>
</tr>
<% for(int i = 0;i<5;i++){ %>
<tr>
<td><%=i%></td>
<td><%=i%></td>
<td><%=i%></td>
</tr>
<% } %>
</table>
jsp指令
聲明jsp頁面的一些屬性和動作
格式:<%@指令名稱 屬性= 值 %>
指令:
page:
contentType:設置文件的mime類型 設置對應的響應流的編碼
language:當前頁面支持的語言 java
pageEncoding:當前頁面的編碼格式
如果以上兩個編碼同時設置,就各用個的
如果出現一個,就共同使用
如果不出現,使用服務器默認的編碼(tomcat8以後:utf-8,tomcat7以及以前ISO8859-1)
import:導入java的jar包
errorPage:錯誤頁面,入股當前頁面出現錯誤 就跳轉
isErrorPage:標註當前頁面是否是 錯誤頁面默認是false
include:靜態包含(包含其他頁面的源碼)
只會產生一個java文件和一個class文件
taglib:導入jsp的標簽庫
jsp9個內置對象
out:頁面輸出
request:請求
response:響應
session:會話
application:全局管理者
config:servletConfig
page:Object類型 代表當前對象
pageContext:當前頁面的上下文對象(jsp才有)
exception:只有當前jsp頁面設置為一個 錯誤頁面才會有這個對象
4個域對象:
applicction:整個工程
session:一次會話(從瀏覽器打開到關閉)
request:一次請求
pageContext:當前頁面
1、域對象
2、獲取其他的內置對象
getXxx()
3、操作其他域對象
scope:用來描述要存儲到哪個域中
setAttribute(key,value,scope)
getAttribute(key,scope)
scope的取值:
PageContext.REQUEST_SCOPE
PageContext.SESSION_SCOPE
PageContext.APPLICATION_SCOPE
4、便捷查找
findAttribute()
根據域的範圍從小到大進行排查,如果查詢到就返回結果 並且停止查詢
jsp的動作標簽
<jsp:include>:動態包含
如果有對各界面,會產生多個java源文件和class文件
<jsp:forward>:請求轉發
擴展: 在web.xml中配置 通用的錯誤頁面
<error-page>
<error-code>404</error-code>
<location>/404.jsp</location>
</error-page>
<error-page>
<error-code>500</error-code>
<location>/404.jsp</location>
</error-page>
jsp介紹