Submit Search
Upload
Ch06 使用 JSP
•
Download as PPTX, PDF
•
0 likes
•
260 views
Justin Lin
Follow
了解 JSP 生命週期 使用 JSP 語法元素 使用 JSP 標準標籤 使用運算式語言(EL) 自訂 EL 函式
Read less
Read more
Technology
Report
Share
Report
Share
1 of 83
Download now
Recommended
Ch02 撰寫與設定 Servlet
Ch02 撰寫與設定 Servlet
Justin Lin
CH1. 簡介 Web 應用程式
CH1. 簡介 Web 應用程式
Justin Lin
Ch03 請求與回應
Ch03 請求與回應
Justin Lin
Ch05 Servlet 進階 API、過濾器與傾聽器
Ch05 Servlet 進階 API、過濾器與傾聽器
Justin Lin
Ch09 整合資料庫
Ch09 整合資料庫
Justin Lin
Ch04 會話管理
Ch04 會話管理
Justin Lin
Ch07 使用 JSTL
Ch07 使用 JSTL
Justin Lin
Ch12 Spring 起步走
Ch12 Spring 起步走
Justin Lin
Recommended
Ch02 撰寫與設定 Servlet
Ch02 撰寫與設定 Servlet
Justin Lin
CH1. 簡介 Web 應用程式
CH1. 簡介 Web 應用程式
Justin Lin
Ch03 請求與回應
Ch03 請求與回應
Justin Lin
Ch05 Servlet 進階 API、過濾器與傾聽器
Ch05 Servlet 進階 API、過濾器與傾聽器
Justin Lin
Ch09 整合資料庫
Ch09 整合資料庫
Justin Lin
Ch04 會話管理
Ch04 會話管理
Justin Lin
Ch07 使用 JSTL
Ch07 使用 JSTL
Justin Lin
Ch12 Spring 起步走
Ch12 Spring 起步走
Justin Lin
Ch13 整合 Spring MVC/Security
Ch13 整合 Spring MVC/Security
Justin Lin
Ch02 撰寫與設定Servlet
Ch02 撰寫與設定Servlet
Justin Lin
Servlet & JSP 教學手冊第二版 - 第 1 章:簡介Web應用程式
Servlet & JSP 教學手冊第二版 - 第 1 章:簡介Web應用程式
Justin Lin
Spring 2.0 技術手冊第一章 - 認識 Spring
Spring 2.0 技術手冊第一章 - 認識 Spring
Justin Lin
Java SE 8 技術手冊第 12 章 - Lambda
Java SE 8 技術手冊第 12 章 - Lambda
Justin Lin
Java Tutorial:Learn Java in 06:00:00
Java Tutorial:Learn Java in 06:00:00
Justin Lin
CH04:認識物件
CH04:認識物件
Justin Lin
CH1:Java平台概論
CH1:Java平台概論
Justin Lin
CH03:基礎語法
CH03:基礎語法
Justin Lin
Spring Boot
Spring Boot
HongSeong Jeon
Spring 2.0 技術手冊第七章 - Spring Web MVC 框架
Spring 2.0 技術手冊第七章 - Spring Web MVC 框架
Justin Lin
Java SE 8 技術手冊第 9 章 - Collection與Map
Java SE 8 技術手冊第 9 章 - Collection與Map
Justin Lin
Spring Boot Tutorial
Spring Boot Tutorial
Naphachara Rattanawilai
LIFULL HOME'SでのSolrの構成と運用の変遷
LIFULL HOME'SでのSolrの構成と運用の変遷
LIFULL Co., Ltd.
Spring boot
Spring boot
Gyanendra Yadav
深入淺出 Web 容器 - Tomcat 原始碼分析
深入淺出 Web 容器 - Tomcat 原始碼分析
Justin Lin
Introduction to Spring Framework and Spring IoC
Introduction to Spring Framework and Spring IoC
Funnelll
Spring boot
Spring boot
Pradeep Shanmugam
ASP.NET Core 6.0 全新功能探索
ASP.NET Core 6.0 全新功能探索
Will Huang
SPA를 AWS Amplify에서 Hosting해 본 경험기
SPA를 AWS Amplify에서 Hosting해 본 경험기
ChanMin Park
Servlet & JSP 教學手冊第二版 - 第 6 章:使用 JSP
Servlet & JSP 教學手冊第二版 - 第 6 章:使用 JSP
Justin Lin
Ch06 使用JSP
Ch06 使用JSP
Justin Lin
More Related Content
What's hot
Ch13 整合 Spring MVC/Security
Ch13 整合 Spring MVC/Security
Justin Lin
Ch02 撰寫與設定Servlet
Ch02 撰寫與設定Servlet
Justin Lin
Servlet & JSP 教學手冊第二版 - 第 1 章:簡介Web應用程式
Servlet & JSP 教學手冊第二版 - 第 1 章:簡介Web應用程式
Justin Lin
Spring 2.0 技術手冊第一章 - 認識 Spring
Spring 2.0 技術手冊第一章 - 認識 Spring
Justin Lin
Java SE 8 技術手冊第 12 章 - Lambda
Java SE 8 技術手冊第 12 章 - Lambda
Justin Lin
Java Tutorial:Learn Java in 06:00:00
Java Tutorial:Learn Java in 06:00:00
Justin Lin
CH04:認識物件
CH04:認識物件
Justin Lin
CH1:Java平台概論
CH1:Java平台概論
Justin Lin
CH03:基礎語法
CH03:基礎語法
Justin Lin
Spring Boot
Spring Boot
HongSeong Jeon
Spring 2.0 技術手冊第七章 - Spring Web MVC 框架
Spring 2.0 技術手冊第七章 - Spring Web MVC 框架
Justin Lin
Java SE 8 技術手冊第 9 章 - Collection與Map
Java SE 8 技術手冊第 9 章 - Collection與Map
Justin Lin
Spring Boot Tutorial
Spring Boot Tutorial
Naphachara Rattanawilai
LIFULL HOME'SでのSolrの構成と運用の変遷
LIFULL HOME'SでのSolrの構成と運用の変遷
LIFULL Co., Ltd.
Spring boot
Spring boot
Gyanendra Yadav
深入淺出 Web 容器 - Tomcat 原始碼分析
深入淺出 Web 容器 - Tomcat 原始碼分析
Justin Lin
Introduction to Spring Framework and Spring IoC
Introduction to Spring Framework and Spring IoC
Funnelll
Spring boot
Spring boot
Pradeep Shanmugam
ASP.NET Core 6.0 全新功能探索
ASP.NET Core 6.0 全新功能探索
Will Huang
SPA를 AWS Amplify에서 Hosting해 본 경험기
SPA를 AWS Amplify에서 Hosting해 본 경험기
ChanMin Park
What's hot
(20)
Ch13 整合 Spring MVC/Security
Ch13 整合 Spring MVC/Security
Ch02 撰寫與設定Servlet
Ch02 撰寫與設定Servlet
Servlet & JSP 教學手冊第二版 - 第 1 章:簡介Web應用程式
Servlet & JSP 教學手冊第二版 - 第 1 章:簡介Web應用程式
Spring 2.0 技術手冊第一章 - 認識 Spring
Spring 2.0 技術手冊第一章 - 認識 Spring
Java SE 8 技術手冊第 12 章 - Lambda
Java SE 8 技術手冊第 12 章 - Lambda
Java Tutorial:Learn Java in 06:00:00
Java Tutorial:Learn Java in 06:00:00
CH04:認識物件
CH04:認識物件
CH1:Java平台概論
CH1:Java平台概論
CH03:基礎語法
CH03:基礎語法
Spring Boot
Spring Boot
Spring 2.0 技術手冊第七章 - Spring Web MVC 框架
Spring 2.0 技術手冊第七章 - Spring Web MVC 框架
Java SE 8 技術手冊第 9 章 - Collection與Map
Java SE 8 技術手冊第 9 章 - Collection與Map
Spring Boot Tutorial
Spring Boot Tutorial
LIFULL HOME'SでのSolrの構成と運用の変遷
LIFULL HOME'SでのSolrの構成と運用の変遷
Spring boot
Spring boot
深入淺出 Web 容器 - Tomcat 原始碼分析
深入淺出 Web 容器 - Tomcat 原始碼分析
Introduction to Spring Framework and Spring IoC
Introduction to Spring Framework and Spring IoC
Spring boot
Spring boot
ASP.NET Core 6.0 全新功能探索
ASP.NET Core 6.0 全新功能探索
SPA를 AWS Amplify에서 Hosting해 본 경험기
SPA를 AWS Amplify에서 Hosting해 본 경험기
Similar to Ch06 使用 JSP
Servlet & JSP 教學手冊第二版 - 第 6 章:使用 JSP
Servlet & JSP 教學手冊第二版 - 第 6 章:使用 JSP
Justin Lin
Ch06 使用JSP
Ch06 使用JSP
Justin Lin
中远公司 Java培训资料
中远公司 Java培训资料
yiditushe
Servlet & JSP 教學手冊第二版 - 第 9 章:整合資料庫
Servlet & JSP 教學手冊第二版 - 第 9 章:整合資料庫
Justin Lin
02.web sphere培训 应用websphere
02.web sphere培训 应用websphere
littlecong
Java SE 8 技術手冊第 16 章 - 整合資料庫
Java SE 8 技術手冊第 16 章 - 整合資料庫
Justin Lin
Java SE 7 技術手冊投影片第 14 章 - 整合資料庫
Java SE 7 技術手冊投影片第 14 章 - 整合資料庫
Justin Lin
如何在 Java App 中導入 Scala
如何在 Java App 中導入 Scala
javatwo2011
jsp基础速成精华讲解
jsp基础速成精华讲解
wensheng wei
Servlet & JSP 教學手冊第二版 - 第 7 章:使用 JSTL
Servlet & JSP 教學手冊第二版 - 第 7 章:使用 JSTL
Justin Lin
Servlet & JSP 教學手冊第二版 - 第 5 章:Servlet 進階 API、過濾器與傾聽器
Servlet & JSP 教學手冊第二版 - 第 5 章:Servlet 進階 API、過濾器與傾聽器
Justin Lin
千呼萬喚始出來的 Java SE 7
千呼萬喚始出來的 Java SE 7
Justin Lin
000 北京圣思园教育科技有限公司第一期面授培训大纲
000 北京圣思园教育科技有限公司第一期面授培训大纲
ArBing Xie
J2ee经典学习笔记
J2ee经典学习笔记
yiditushe
Jsp
Jsp
rdandy
Java Web动态图表编程
Java Web动态图表编程
yiditushe
Spring mvc
Spring mvc
pepsixp
Java华为面试题
Java华为面试题
yiditushe
Jsonp
Jsonp
LearningTech
Servlet & JSP 教學手冊第二版 - 第 2 章:撰寫與設定 Servlet
Servlet & JSP 教學手冊第二版 - 第 2 章:撰寫與設定 Servlet
Justin Lin
Similar to Ch06 使用 JSP
(20)
Servlet & JSP 教學手冊第二版 - 第 6 章:使用 JSP
Servlet & JSP 教學手冊第二版 - 第 6 章:使用 JSP
Ch06 使用JSP
Ch06 使用JSP
中远公司 Java培训资料
中远公司 Java培训资料
Servlet & JSP 教學手冊第二版 - 第 9 章:整合資料庫
Servlet & JSP 教學手冊第二版 - 第 9 章:整合資料庫
02.web sphere培训 应用websphere
02.web sphere培训 应用websphere
Java SE 8 技術手冊第 16 章 - 整合資料庫
Java SE 8 技術手冊第 16 章 - 整合資料庫
Java SE 7 技術手冊投影片第 14 章 - 整合資料庫
Java SE 7 技術手冊投影片第 14 章 - 整合資料庫
如何在 Java App 中導入 Scala
如何在 Java App 中導入 Scala
jsp基础速成精华讲解
jsp基础速成精华讲解
Servlet & JSP 教學手冊第二版 - 第 7 章:使用 JSTL
Servlet & JSP 教學手冊第二版 - 第 7 章:使用 JSTL
Servlet & JSP 教學手冊第二版 - 第 5 章:Servlet 進階 API、過濾器與傾聽器
Servlet & JSP 教學手冊第二版 - 第 5 章:Servlet 進階 API、過濾器與傾聽器
千呼萬喚始出來的 Java SE 7
千呼萬喚始出來的 Java SE 7
000 北京圣思园教育科技有限公司第一期面授培训大纲
000 北京圣思园教育科技有限公司第一期面授培训大纲
J2ee经典学习笔记
J2ee经典学习笔记
Jsp
Jsp
Java Web动态图表编程
Java Web动态图表编程
Spring mvc
Spring mvc
Java华为面试题
Java华为面试题
Jsonp
Jsonp
Servlet & JSP 教學手冊第二版 - 第 2 章:撰寫與設定 Servlet
Servlet & JSP 教學手冊第二版 - 第 2 章:撰寫與設定 Servlet
More from Justin Lin
Ch14 簡介 Spring Boot
Ch14 簡介 Spring Boot
Justin Lin
Ch11 簡介 JavaMail
Ch11 簡介 JavaMail
Justin Lin
Ch10 Web 容器安全管理
Ch10 Web 容器安全管理
Justin Lin
Ch08 自訂標籤
Ch08 自訂標籤
Justin Lin
14. 進階主題
14. 進階主題
Justin Lin
13.並行、平行與非同步
13.並行、平行與非同步
Justin Lin
12. 除錯、測試與效能
12. 除錯、測試與效能
Justin Lin
11. 常用內建模組
11. 常用內建模組
Justin Lin
10. 資料永續與交換
10. 資料永續與交換
Justin Lin
9. 資料結構
9. 資料結構
Justin Lin
8. open() 與 io 模組
8. open() 與 io 模組
Justin Lin
7. 例外處理
7. 例外處理
Justin Lin
6. 類別的繼承
6. 類別的繼承
Justin Lin
5. 從模組到類別
5. 從模組到類別
Justin Lin
4. 流程語法與函式
4. 流程語法與函式
Justin Lin
3.型態與運算子
3.型態與運算子
Justin Lin
1. Python起步走
1. Python起步走
Justin Lin
2. 從 REPL 到 IDE
2. 從 REPL 到 IDE
Justin Lin
Python 3.9 技術手冊目錄
Python 3.9 技術手冊目錄
Justin Lin
CH19:深入模組化
CH19:深入模組化
Justin Lin
More from Justin Lin
(20)
Ch14 簡介 Spring Boot
Ch14 簡介 Spring Boot
Ch11 簡介 JavaMail
Ch11 簡介 JavaMail
Ch10 Web 容器安全管理
Ch10 Web 容器安全管理
Ch08 自訂標籤
Ch08 自訂標籤
14. 進階主題
14. 進階主題
13.並行、平行與非同步
13.並行、平行與非同步
12. 除錯、測試與效能
12. 除錯、測試與效能
11. 常用內建模組
11. 常用內建模組
10. 資料永續與交換
10. 資料永續與交換
9. 資料結構
9. 資料結構
8. open() 與 io 模組
8. open() 與 io 模組
7. 例外處理
7. 例外處理
6. 類別的繼承
6. 類別的繼承
5. 從模組到類別
5. 從模組到類別
4. 流程語法與函式
4. 流程語法與函式
3.型態與運算子
3.型態與運算子
1. Python起步走
1. Python起步走
2. 從 REPL 到 IDE
2. 從 REPL 到 IDE
Python 3.9 技術手冊目錄
Python 3.9 技術手冊目錄
CH19:深入模組化
CH19:深入模組化
Ch06 使用 JSP
1.
1
2.
6 • 使用 JSP 學習目標 •
了解 JSP 生命週期 • 使用 JSP 語法元素 • 使用 JSP 標準標籤 • 使用運算式語言(EL) • 自訂 EL 函式 2
3.
JSP 生命週期 3
4.
4
5.
從Java EE 7的JSP
2.3開始 JSP只接受GET、POST、HEAD請求 5
6.
6
7.
JSP 生命週期 7
8.
8
9.
Servlet 至 JSP
的簡單轉換 9
10.
Servlet 至 JSP
的簡單轉換 10
11.
Servlet 至 JSP
的簡單轉換 11
12.
12
13.
13
14.
14
15.
15
16.
16
17.
17
18.
指示元素 • page • include •
taglib 18
19.
page 指示元素 • 指示如何轉譯... 19
20.
page 指示元素 • 可用屬性 –
info – autoFlush – buffer – errorPage – extends – isErrorPage – language – session – isELIgnored – isThreadSafe 20
21.
include 指示元素 21
22.
include 指示元素 22
23.
指示元素 • 可以在 web.xml
統一預設的網頁編碼、內容 類型、緩衝區大小等 23
24.
指示元素 • 可以宣告 JSP
開頭與結尾要包括的網頁 24
25.
宣告元素 • 轉譯為 Servlet
的類別成員或方法 25
26.
宣告元素 26
27.
宣告元素 • 重新定義 jspInit()、jspDestroy() 27
28.
Scriptlet 元素 • 轉譯為
Servlet 原始碼_jspService()方法 中的內容 28
29.
29
30.
運算式元素 • 運算結果將直接輸出為網頁的一部份 30
31.
31
32.
禁用 Scriptlet • 如果想禁用
JSP 的 Scriptlet,則可以在 web.xml 設定 32
33.
註解元素 33
34.
隱含物件 • 像 out、request
這樣的字眼,在轉譯為 Servlet 之後,會直接對應於 _jspService() 中的某個區域變數 34
35.
35
36.
隱含物件 • 隱含物件只能在 <%
與 %> 間,或 <%=與%> 間使用 • 無法在 <%! 與 %> 間使用隱含物件 36
37.
錯誤處理 • JSP 終究會轉譯為
Servlet,所以錯誤可能發 生在三個時候 – JSP 轉換為 Servlet 原始碼時 – Servlet 原始碼進行編譯時 – Servlet 載入容器進行服務但發生執行時期錯誤時 37
38.
JSP 轉換為 Servlet
原始碼時 • 容器在轉譯 JSP 時不知道該怎麼將那些語法 轉譯為 Servlet 的 .java 檔案 38
39.
Servlet 原始碼進行編譯時 • 嘗試將
.java 編譯為 .class 檔案,如果此時編 譯器因為某個原因而無法完成編譯 39
40.
進行服務但發生執行時期錯誤時 • 在執行時期因找不到某個資源、程式邏輯上 的問題而發生錯誤 40
41.
進行服務但發生執行時期錯誤時 41
42.
errorPage 屬性 42
43.
errorPage 屬性 43
44.
errorPage 屬性 44
45.
web.xml 設定 45
46.
<jsp:include>、<jsp:forward> 標籤 • 執行時期依條件動態地調整包括的
JSP 頁面 • 目前頁面會自己生成一個 Servlet 類別被包括的 add.jsp 也會獨立生成一個 Servlet 類別 • 轉譯而成的 Servlet 會取得 RequestDispatcher 物件,並執行 include()方法 46
47.
<jsp:include>、<jsp:forward> 標籤 • 將請求轉發給另一個
JSP 頁面作處理 • 目前頁面會生成一個 Servlet,而被轉發的 add.jsp 也是生成一個 Servlet • 轉譯的 Servlet 會取得 RequestDispatcher 物件,並執行forward()方法 47
48.
簡介 <jsp:useBean>、<jsp:setProperty> 與 <jsp:getProperty> •
搭配 <jsp:useBean> 的 JavaBean 元件 – 必須實作 java.io.Serializable 介面 – 沒有公開(public)的類別變數 – 具有無參數的建構式 – 具有公開的設值方法(Setter)與取值方法 (Getter) 48
49.
簡介 <jsp:useBean>、<jsp:setProperty> 與 <jsp:getProperty> 49
50.
50
51.
深入 <jsp:useBean>、<jsp:setProperty> 與<jsp:getProperty> 51
52.
深入 <jsp:useBean>、<jsp:setProperty> 與<jsp:getProperty> 52
53.
深入 <jsp:useBean>、<jsp:setProperty> 與<jsp:getProperty> 53
54.
深入 <jsp:useBean>、<jsp:setProperty> 與<jsp:getProperty> • 標籤的目的是減少
JSP 中 Script 的使用 • 反過來說,如果發現 JSP 有 Scriptlet,撰寫 的是從某個屬性範圍中取得物件 • 思考是否可以用 <jsp:useBean> 消除 Scriptlet 的使用 54
55.
深入 <jsp:useBean>、<jsp:setProperty> 與<jsp:getProperty> • 使用
PageContext的findAttribute(),從 page、request、session、application 依 序找看看有無name指定的屬性名稱 • 找到的話,再透過反射機制找出 JavaBean 的 setPassword()方法,呼叫並將 value 的指定值 設定給 JavaBean 55
56.
深入 <jsp:useBean>、<jsp:setProperty> 與<jsp:getProperty> • 將請求參數的值設定給
JavaBean 的某個屬性 • 由 JSP 的自省機制來判斷是否有相同的請求 參數名稱 • 自省機制自動匹配 56
57.
深入 <jsp:useBean>、<jsp:setProperty> 與<jsp:getProperty> • 使用
<jsp:useBean> 時一併設定屬性值 57
58.
深入 <jsp:useBean>、<jsp:setProperty> 與<jsp:getProperty> • 底下這個有點不同 58
59.
深入 <jsp:useBean>、<jsp:setProperty> 與<jsp:getProperty> • 取得
JavaBean 屬性 59
60.
Model 2 60
61.
Model 2 61
62.
談談 Model 1 62
63.
談談 Model 1 63
64.
簡介 EL 64
65.
簡介 EL • EL
優雅地處理了 null 值的情況,對於 null 值直接以空字串加以顯示 65
66.
簡介 EL • EL
的點運算子還可以連續存取物件 66
67.
簡介 EL • 可以使用
page 指示元素的 isELIgnored 屬性(預設是false),來設定 JSP 網頁是 否使用 EL • 可以在 web.xml 設定 <el-ignored> 標籤 為 true 來決定不使用 EL 67
68.
簡介 EL • 如果
web.xml 的 <el-ignored> 與 page 指令元素 的 isELIgnored 設定都沒有設定 – 2.3 或以下的版本,不會執行 EL – 2.4 或以上的版本,則會執行 EL • 不設定 page 指令元素的 isELIgnored – web.xml 的 <el-ignored> 為 false,則會執行 EL, – web.xml 的 <el-ignored> 為 true,則不會執行 EL • 使用 page 指令元素的 isELIgnored 設定是否支 援 EL,則以 page 指令元素的設定為主 68
69.
使用 EL 取得屬性 •
存取屬性 • 存取陣列 69
70.
使用 EL 取得屬性 •
如果使用點(.)運算子,則左邊可以是 JavaBean 或 Map 物件 • 如果使用[]運算子,則左邊可以是 JavaBean、 Map、陣列或 List 物件 • 例如 JavaBean... 70
71.
使用 EL 取得屬性 •
例如 Map... 71
72.
使用 EL 取得屬性 •
當左邊是 Map 物件時,建議使用 [] 運算子, 因為如果設定 Map 時的鍵名稱有空白或點字 元時,這是可以正確取得值的方式 72
73.
使用 EL 取得屬性 •
List 的例子 73
74.
使用 EL 取得屬性 •
如果[]運算子中不是使用雙引號,則會嘗試 作運算 74
75.
使用 EL 取得屬性 •
[] 也可以進行巢狀 ... 75
76.
EL 隱含物件 • pageContext
隱含物件 • 屬性範圍相關隱含物件 • 請求參數相關隱含物件 • 標頭(Header)相關隱含物件 • cookie 隱含物件 • 初始參數隱含物件 76
77.
EL 運算子 77
78.
EL 運算子 78
79.
EL 運算子 79
80.
自訂 EL 函式 80
81.
自訂 EL 函式 81
82.
自訂 EL 函式 82
83.
綜合練習/微網誌 • 使用 JSP
改寫先前綜合練習中使用 Servlet 實 現的視圖網頁 83
Download now