此部分包括: JSP, EL, JSTL, My Tag, I18N, FileUpDown
1.jsp有哪些內置對象?作用分別是什么?
答:JSP共有以下9個內置的對象:
request: 用戶端請求,此請求會包含來自GET/POST請求的參數
response: 網頁傳回用戶端的回應
pageContext: 網頁的屬性是在這里管理
session: 與請求有關的會話期
application: 與當前應用對應的ServletContext對象, 應用中只有一個
out: 用來傳送回應的輸出 {}<%=%>
config: 與jsp配置對象的對象, 一般無用
page: jsp對應的Servlet對象
exception: 針對錯誤網頁,未捕捉的異常對象
2. jsp有哪些動作?作用分別是什么?
答:JSP共有以下6種基本動作
jsp:include:在頁面被請求的時候引入一個文件。
jsp:forward:把請求轉到一個新的頁面。
jsp:useBean:尋找或者實例化一個JavaBean。
jsp:setProperty:設置JavaBean的屬性。
jsp:getProperty:輸出某個JavaBean的屬性。
jsp:plugin:根據瀏覽器類型為Java插件生成OBJECT或EMBED標記
3. JSP的常用指令
答:主要有下面3種指令
- page指令: 指定頁面的的一些屬性, 常用屬性:
contentType=”text/html; charset=utf-8″ //向瀏覽器端輸出數據的編碼
pageEncoding=”utf-8″ //jsp文件被編譯成java文件時所用的編碼
session=”true” //是否自動創建session


- include指令: 包含別一個jsp頁面
- taglib指令: 引入一個標簽庫
4. JSP中動態INCLUDE與靜態INCLUDE的區別?
答:
- 動態包含: 用<jsp:include>, 包含的動作是在jsp對應的Serlet處理請求時去執行的,每次請求都會執行.
- 靜態包含: 用include指令, 包含的動作是在jsp被編譯成java文件時執行的, 只有第一次請求時執行.
5. JSP和Servlet有哪些相同點和不同點,他們之間的聯系是什么?
答:
JSP的優點是擅長于網頁制作,生成動態頁面比較直觀,缺點是不容易跟蹤與排錯。
Servlet是純Java語言,擅長于處理流程和業務邏輯,缺點是生成動態網頁不直觀。
6. EL的功能, 為什么要用EL?
EL的功能包括:
- 從四個域對象中取出屬性數據顯示
- 取出請求參數數據顯示
為什么要用EL?
在頁面中用jsp腳本和jsp表達式來獲取數據顯示比較麻煩
- 需要條件判斷
- 可能需要強轉
7. JSTL的功能, 為什么要用JSTL?
JSTL的功能
JSTL全名為JavaServer Pages Standard Tag Library, 主要用于基本輸入輸出、流程控制、循環、XML文件剖析、數據庫查詢及國際化和文字格式標準化的應用等
為什么要用JSTL?
在jsp頁面做條件判斷或循環操作并輸出時, 比較費力
8. 為什么要用自定義標簽?, MyTag如何實現?
為什么要用?
- 不想在Jsp中編寫java代碼
- JSTL標簽庫不能滿足實際項目的需求
自定義標簽定義和使用的流程
1.編寫標簽處理器類(SimpleTagSupport的實現類)
- 重寫doTag()
2.編寫標簽庫文件(WEB-INF/xxx.tld)
- 整個文件的定義: <short-name> <uri>
- 標簽的定義: <tag>
3.在jsp頁面使用標簽:
- 導入標簽庫(xxx.tld/)
- 使用標簽
版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。