學通Java Web的24堂課

學通Java Web的24堂課

《學通Java Web的24堂課》是2011年6月清華大學出版社出版的圖書,作者是陳丹丹、盧瀚。

基本介紹

  • 書名:學通Java Web的24堂課
  • 作者:陳丹丹、盧瀚 
  • ISBN:9787302255390   
  • 定價:79.80元
  • 出版社:清華大學出版社
  • 出版時間:2011年6月
  • 開本:16開
內容簡介,前言,圖書目錄,

內容簡介

本書以24堂課的形式,從國中級用戶的角度出發,科學合理地設計,突出學、練、用結合,全面講述了學習Java Web程式開發必備的知識和技能。主要包括:搭建開發環境、JSP中的Java程式、HTML語言與CSS樣式、JavaScript腳本語言、掌握JSP語法、使用JSP內置對象、JavaBean技術、Servlet技術、使用EL表達式、JSTL核心標籤庫、使用Ajax技術、Struts2基礎、深入Struts2、Hibernate框架基礎、Hibernate高級套用、Spring框架、Spring MVC框架、JSP操作XML、檔案上傳與下載、動態圖表、Java Mail組件、部落格系統、JSP+Hibernate實現留言模組、用戶管理系統。
本書適合有志於從事軟體開發的初學者、高校計算機相關專業學生和畢業生,也可作為軟體開發人員的參考手冊,或者高校的教學參考書。
本書通過教學視頻、實例訓練、綜合套用、項目實踐、自我測試、行動指南逐步深入和強化訓練等方式,並輔之以心理勵志,來持續激發讀者主動學習、自發學習。
本書給出了285個小型實例,196個綜合套用,6個項目案例(部分在光碟中),各類技巧、試驗200餘個,測試題目210個,以方便讀者訓練、測試和快速提升。
本書DVD光碟給出了110集(281段)多媒體教學視頻講解,每個實例都給出了相應的源程式,可直接複製源碼學習或套用。

前言

前 言
Java是Sun公司推出的能夠跨越多平台的、可移植性最高的一種面向對象的程式語言,也是目前最先進、特徵最豐富、功能最強大的計算機語言。利用Java可以編寫桌面應用程式、Web應用程式、分散式系統、嵌入式系統應用程式等,從而使其成為套用範圍最廣泛的開發語言,特別是在Web程式開發方面。
目前,介紹Java Web開發領域的書籍有很多,但是能真正把技術講透的卻不多,尤其是結合項目實戰來學習的書籍就更少了。本書將從初學者的角度,循序漸進地講解使用Java語言和開源框架進行Web程式開發應該掌握的各項技術,其中主要包括JSP/Servlet技術、常用的Web開發框架和Web開發實用技術等,這些都是每一個Java Web開發程式設計師所必備的。
本書內容
學、練、用到精通只需24堂課。本書從國中級用戶的角度,科學合理地設計,通過24堂課全面講述了Java Web程式開發必備知識和技能,如下圖所示。
第1部分 基礎篇(第1~6堂課):講述了搭建開發環境、JSP中的Java程式、HTML語言與CSS樣式、JavaScript腳本語言、掌握JSP語法、使用JSP內置對象等內容。在講解過程中,為了便於理解,結合了大量的圖示、舉例、技巧、錄像等,使讀者能夠快速掌握Java開發工具和JSP技術,為以後進行Java Web編程打下堅實的基礎。
第2部分 提高篇(第7~11堂課):講述了JavaBean技術、Servlet技術、使用EL表達式、JSTL核心標籤庫和使用Ajax技術等,其中結合了大量的實例和圖解,詳細講解了JSP程式開發所需的高級技術。通過對這一部分的學習,讀者應該能夠完全掌握JSP語言,並且擁有Java Web程式開發的能力。
第3部分 框架篇(第12~17堂課):主要介紹了開發Java Web應用程式的流行框架技術,其中包括Struts2基礎、深入Struts2、Hibernate框架基礎、Hibernate高級套用、Spring框架、Spring的MVC框架。通過對這一部分的學習,讀者將能夠開發大型的網站程式。
第4部分 實用技術篇(第18~21堂課):主要介紹了Java?Web應用程式開發中的實用技術,其中包括JSP操作XML、檔案上傳與下載、動態圖表和Java Mail組件等,這些都是Java Web程式開發所必需的技術和組件,是對前幾部分知識的補充。通過對這一部分的學習,讀者可以開發更加完整、美觀和實用的Java Web網站。
第5部分 實戰篇(第22~24堂課):通過3個完整的項目實例來介紹大型應用程式的設計過程,其中包括部落格系統、JSP+Hibernate實現留言模組和用戶管理系統。這3個項目是作者精心挑選的,涵蓋了資料庫、Struts、Hibernate、Spring多個框架及其整合技術。通過對這3個項目的介紹,讀者可以鞏固前面所學的知識和技術,積累項目開發經驗。
本書特點
* 配備110集(281段)多媒體教學視頻講解。
本書DVD光碟提供了覆蓋全書的語音視頻講解,讀者可以通過視頻快速、直觀、輕鬆地學習。
* 每一堂課都結合“照貓畫虎”、“情景套用”。
為了增強讀者動手能力,激發學習興趣,本書提供了“照貓畫虎”和“情景套用”欄目,根據實例模仿著去做是學習編程的最快方式。
* 每一堂課都結合勵志故事和“行動指南”,時刻激勵和鼓舞。
我們認為學習中尤其是最初的一段時間非常有必要不斷地對學習者以激勵和鼓舞,讓他們堅持下來是至關重要的,因此書中不間斷地用一些勵志故事和行動指南以鼓舞其信心。
* 光碟提供了本書的所有代碼,即使只有一行。
本書光碟不僅提供了所有實例的源程式,還提供了書中所有示例的原始碼,哪怕只有一行。讀者可以直接複製,以提高學習效率。
* 本書所有習題和實戰都給出了答案,部分習題還有解析,讀者可以對照查閱。
讀者對象
? 有志於從事軟體開發的初學者
? 高等院校計算機相關專業的老師和學生
? 準備從事軟體開發的求職者
? 參與畢業設計的學生
? 國中級程式開發人員
? 程式測試及維護人員
本書作者
本書由明日科技組織編寫,參加編寫的程式設計師有陳丹丹、盧瀚、朱曉、王春斌、王國輝、賽奎春、潘凱華、劉欣、李慧、高春艷、李偉、孫秀梅、楊麗、劉玲玲、劉燕、陳英、李鑫、李賀、肖鑫、張麗娜、沈博、劉冠男、曹飛飛、李麗、聶喜婷、王明昭、張英豪、王小科、趙會東、白偉明等。
由於水平有限,書中疏漏和不足之處在所難免,懇請廣大讀者朋友批評指正。
技術支持與服務
最後,感謝您選擇本書,希望本書能成為您編程路上的領航者。
祝讀書快樂!
特別提醒:
親愛的讀者朋友,由於近期紙張價格和印製成本大幅上漲,為不增加讀者朋友的負擔,又不減少書的內容,本書的最後幾章內容不得不放在配書光碟中(參見目錄),由此給您帶來了不便,在此深表歉意。
編 者

圖書目錄

目 錄
第1部分 基礎篇
第1堂課 搭建開發環境 3
視頻講解:97分鐘
1.1 Java Web套用的開發環境概述 4
1.1.1 開發工具包JDK 4
1.1.2 Web伺服器 4
1.1.3 Web瀏覽器 5
1.2 JDK的安裝與配置 5
1.2.1 下載JDK 5
1.2.2 安裝JDK 6
1.2.3 Windows系統下配置和測試JDK 7
1.3 Tomcat的安裝與配置 9
1.3.1 下載Tomcat 9
1.3.2 Tomcat的目錄結構 11
1.3.3 修改Tomcat的默認連線埠 11
1.3.4 部署Web套用 11
1.4 Eclipse的安裝與使用 12
1.4.1 Eclipse的下載與安裝 12
1.4.2 啟動Eclipse 13
1.4.3 Eclipse工作檯 14
1.4.4 使用Eclipse開發Web套用 14
1.4.5 Eclipse的常用快捷鍵 18
1.5 照貓畫虎——基本功訓練 20
1.5.1 基本功訓練1——配置JDK的環境變數 20
1.5.2 基本功訓練2——在DOS環境中測試
JDK 21
1.5.3 基本功訓練3——在DOS環境中編譯
Java源檔案 21
1.5.4 基本功訓練4——在Tomcat中手動部署
Web套用 23
1.5.5 基本功訓練5——手動啟動與關閉
Tomcat伺服器 24
1.6 情景套用——拓展與實踐 25
1.6.1 情景套用1——在Eclipse中配置
Tomcat伺服器 25
1.6.2 情景套用2——創建第一個Web項目 26
1.6.3 情景套用3——設定Eclipse工作空間
的字元編碼 27
1.6.4 情景套用4——設定代碼提示的快捷鍵 28
1.6.5 情景套用5——為項目導入所需的Jar包 29
1.7 自我測試 29
1.8 行動指南 30
1.9 成功可以複製——80後新貴、泡泡網
CEO李想 31
第2堂課 JSP中的Java程式 33
視頻講解:205分鐘
2.1 Java數據類型 34
2.1.1 Java基本數據類型 34
2.1.2 變數與常量 34
2.1.3 對應基本數據類型的內置類 36
2.2 運算符和表達式 36
2.2.1 算術運算符 36
2.2.2 關係運算符 37
2.2.3 邏輯運算符 37
2.2.4 三元運算符 38
2.2.5 表達式 39
2.3 流程控制語句 39
2.3.1 條件語句 39
2.3.2 循環語句 42
2.3.3 跳轉語句 44
2.4 面向對象編程基礎 44
2.4.1 Java中的類和對象 44
2.4.2 Java中的修飾符 45
2.4.3 抽象類和接口 46
2.4.4 Java中的代碼注釋 49
2.4.5 異常處理技術 50
2.5 照貓畫虎——基本功訓練 52
2.5.1 基本功訓練1——判斷變數的奇偶性 52
2.5.2 基本功訓練2——輸出大於1的40個
素數 53
2.5.3 基本功訓練3——定義包含屬性和
方法的汽車類 54
2.5.4 基本功訓練4——輸出空心的菱形 55
2.5.5 基本功訓練5——拋出“除數不能為
負數”異常信息 56
2.6 情景套用——拓展與實踐 57
2.6.1 情景套用1——輸出長方形的面積 57
2.6.2 情景套用2——switch語句實現生肖
查詢 57
2.6.3 情景套用3——統計圖書的銷售量 59
2.6.4 情景套用4——輸出數字對應的金字塔 60
2.6.5 情景套用5——實現溫度單位轉換 60
2.7 自我測試 61
2.8 行動指南 63
2.9 成功可以複製——Java技術之父James
Gosling 63
第3堂課 HTML語言與CSS樣式 65
視頻講解:51分鐘
3.1 XHTML基礎 66
3.1.1 XHTML語言的語法 66
3.1.2 XHTML檔案的結構 68
3.1.3 編輯文字版面 70
3.1.4 插入圖像與連結 72
3.1.5 編寫XHTML表格 73
3.1.6 設計XHTML表單 74
3.2 CSS樣式套用 78
3.2.1 將CSS樣式嵌入到HTML中 78
3.2.2 CSS選擇符 79
3.2.3 常見的CSS樣式屬性 81
3.3 設計頁面布局 86
3.3.1 <div>和<span>標籤 86
3.3.2 區塊模型 87
3.3.3 區塊浮動 87
3.4 照貓畫虎——基本功訓練 90
3.4.1 基本功訓練1——製作可以輸入密碼的
文本框 90
3.4.2 基本功訓練2——套用刪除線樣式標註
商品特價 91
3.4.3 基本功訓練3——滑鼠經過表格時顯示
提示信息 91
3.4.4 基本功訓練4——顯示自定義的滑鼠形狀 92
3.4.5 基本功訓練5——CSS控制絕對定位 94
3.5 情景套用——拓展與實踐 95
3.5.1 情景套用1——編寫用戶註冊表單頁 95
3.5.2 情景套用2——為網頁添加背景音樂 96
3.5.3 情景套用3——插入Flash動畫 96
3.5.4 情景套用4——文字的發光特效 97
3.5.5 情景套用5——打造經典的導航欄 98
3.6 自我測試 100
3.7 行動指南 101
3.8 成功可以複製——防毒王王江民 102
第4堂課 JavaScript腳本語言 105
視頻講解:239分鐘
4.1 了解JavaScript 106
4.1.1 什麼是JavaScript 106
4.1.2 JavaScript的主要特點 106
4.1.3 JavaScript與Java的區別 106
4.2 在Web頁面中使用JavaScript 107
4.2.1 在頁面中直接嵌入JavaScript 107
4.2.2 連結外部JavaScript 107
4.3 JavaScript語言基礎 108
4.3.1 JavaScript的語法 108
4.3.2 JavaScript中的關鍵字 109
4.3.3 了解JavaScript的數據類型 110
4.3.4 變數的定義及使用 112
4.3.5 運算符的套用 113
4.3.6 套用流程控制語句 115
4.4 使用正則表達式 118
4.4.1 正則表達式的語法 118
4.4.2 創建正則表達式對象(RegExp) 120
4.4.3 套用RegExp對象執行模式匹配 121
4.5 函式 123
4.5.1 函式的定義 123
4.5.2 函式的調用 123
4.5.3 匿名函式 124
4.6 事件和事件處理程式 125
4.6.1 什麼是事件和事件處理程式 125
4.6.2 JavaScript的常用事件 125
4.6.3 事件處理程式的調用 126
4.7 常用對象 127
4.7.1 String對象 127
4.7.2 Math對象 130
4.7.3 Date對象 131
4.7.4 window對象 134
4.8 DOM技術 137
4.8.1 DOM概述 137
4.8.2 DOM的分層結構 137
4.8.3 遍歷文檔 138
4.8.4 獲取文檔中的指定元素 140
4.8.5 操作文檔 140
4.9 照貓畫虎——基本功訓練 142
4.9.1 基本功訓練1——通過switch語句根據
當前日期彈出不同的提示信息 142
4.9.2 基本功訓練2——通過for循環計算10
以內(不包括10)所有偶數的和 143
4.9.3 基本功訓練3——驗證用戶輸入的年齡
是否為數字 144
4.9.4 基本功訓練4——去掉字元串左右空格 145
4.9.5 基本功訓練5——限制輸入字元串的
長度 145
4.10 情景套用——拓展與實踐 147
4.10.1 情景套用1——驗證E-mail是否正確 147
4.10.2 情景套用2——驗證手機號碼是否正確 148
4.10.3 情景套用3——計算兩個日期相差
的天數 148
4.10.4 情景套用4——將某地區的人口總數
分位顯示 150
4.10.5 情景套用5——實現可編輯的表格 151
4.11 自我測試 152
4.12 行動指南 154
4.13 成功可以複製——締造華人的矽谷
傳奇楊致遠 155
第5堂課 掌握JSP語法 157
視頻講解:66分鐘
5.1 JSP頁面的基本構成 158
5.2 JSP指令標籤 159
5.2.1 頁碼指令page 159
5.2.2 檔案包含指令include 161
5.2.3 引用標籤庫指令taglib 162
5.3 嵌入Java代碼 163
5.3.1 代碼片段 163
5.3.2 JSP表達式 163
5.4 巧用注釋 163
5.4.1 HTML注釋 163
5.4.2 JSP注釋 164
5.4.3 代碼注釋 164
5.4.4 動態注釋 164
5.5 JSP動作標籤 165
5.5.1 包含外部檔案的<jsp:include>動作標籤 165
5.5.2 請求轉發的<jsp:forward>動作標籤 166
5.5.3 設定參數的<jsp:param>動作標籤 167
5.6 照貓畫虎——基本功訓練 167
5.6.1 基本功訓練1——自定義錯誤提示頁面 167
5.6.2 基本功訓練2——在頁面中動態添加
表格 167
5.6.3 基本功訓練3——將請求轉發至登錄
頁面 168
5.6.4 基本功訓練4——導入版權資訊頁 170
5.6.5 基本功訓練5——在JSP頁面中輸出
星號組成的金字塔 171
5.7 情景套用——拓展與實踐 172
5.7.1 情景套用1——根據數據表動態生成
下拉列表 172
5.7.2 情景套用2——JSP腳本嵌入
JavaScript代碼 173
5.7.3 情景套用3——定義可輸入文字的
下拉列表 174
5.7.4 情景套用4——在頁面中引入一個
HTML檔案 175
5.7.5 情景套用5——將3個頁面組成一個
新的頁面 176
5.8 自我測試 178
5.9 行動指南 178
5.10 成功可以複製——全球最大中間件
公司BEA創始人之一莊思浩 179
第6堂課 使用JSP內置對象 181
視頻講解:91分鐘
6.1 JSP內置對象概述 182
6.2 頁面請求對象request 182
6.2.1 獲取請求參數值 182
6.2.2 獲取表單提交的信息 183
6.2.3 解決中文亂碼 184
6.2.4 獲取客戶端信息 185
6.2.5 在作用域中管理屬性 186
6.2.6 獲取cookie 187
6.2.7 顯示國際化信息 188
6.3 客戶端回響對象response 189
6.3.1 重定向網頁 189
6.3.2 設定輸出緩衝 189
6.3.3 處理HTTP檔案頭 190
6.4 session會話對象 191
6.4.1 創建及獲取session會話 191
6.4.2 從會話中移除指定的對象 192
6.4.3 設定會話的有效時間 192
6.4.4 銷毀session 192
6.4.5 session對象的套用 193
6.5 application對象 195
6.5.1 應用程式初始化參數 195
6.5.2 管理應用程式環境屬性 196
6.6 輸出對象out 196
6.6.1 向客戶端輸出數據 196
6.6.2 管理相應緩衝區 196
6.7 其他內置對象 197
6.7.1 獲取會話範圍的pageContext對象 197
6.7.2 讀取web.xml配置信息的config對象 197
6.7.3 應答或請求的page對象 198
6.7.4 獲取異常信息的exception對象 198
6.8 照貓畫虎——基本功訓練 200
6.8.1 基本功訓練1——application實現網頁
計數器 200
6.8.2 基本功訓練2——獲取用戶IP位址 201
6.8.3 基本功訓練3——顯示留言信息 201
6.8.4 基本功訓練4——給出session逾時提示 203
6.8.5 基本功訓練5——獲取傳輸數據的
協定名 204
6.9 情景套用——拓展與實踐 205
6.9.1 情景套用1——在登錄頁面中添加
驗證碼 205
6.9.2 情景套用2——實現自動登錄 207
6.9.3 情景套用3——定時刷新頁面 208
6.9.4 情景套用4——統計用戶在某頁停留
時間 209
6.9.5 情景套用5——將表單請求提交至本頁 210
6.10 自我測試 212
6.11 行動指南 213
6.12 成功可以複製——讓下載迅雷不及
掩耳鄒勝龍 213
第2部分 提高篇
第7堂課 JavaBean技術 217
視頻講解:75分鐘
7.1 JavaBean技術介紹 218
7.1.1 JavaBean簡介 218
7.1.2 JavaBean規範 219
7.2 JavaBean在JSP中的套用 220
7.2.1 <jsp:useBean>標籤 220
7.2.2 <jsp:setProperty>標籤 221
7.2.3 <jsp:getProperty>標籤 223
7.2.4 JavaBean的作用域 225
7.3 照貓畫虎——基本功訓練 226
7.3.1 基本功訓練1——定義獲取當前年
份方法 226
7.3.2 基本功訓練2——判斷用戶是否輸入
指定字元開頭的字元串 228
7.3.3 基本功訓練3——定義數據查詢方法 230
7.3.4 基本功訓練4——將長整型數字分位
顯示 232
7.3.5 基本功訓練5——判斷字元串是否
包含數字 234
7.4 情景套用——拓展與實踐 236
7.4.1 情景套用1——套用JavaBean處理
中文 236
7.4.2 情景套用2——將用戶選擇內容轉換
為字元串 239
7.4.3 情景套用3——小寫金額轉換成大寫
金額 241
7.4.4 情景套用4——過濾非法字元 244
7.4.5 情景套用5——實現數據分頁 246
7.5 自我測試 249
7.6 行動指南 249
7.7 成功可以複製——軟體業的華人教父
王嘉廉 250
第8堂課 Servlet技術 253
視頻講解:90分鐘
8.1 Servlet基礎 254
8.1.1 初步認識Servlet 254
8.1.2 Servlet技術功能 254
8.1.3 Servlet技術特點 255
8.2 Servlet開發 256
8.2.1 創建Servlet 256
8.2.2 配置Servlet的相關元素 256
8.3 Servlet核心API 258
8.3.1 Servlet接口 258
8.3.2 GenericServlet抽象類 258
8.3.3 HttpServlet抽象類 259
8.3.4 HttpServletRequest接口 259
8.3.5 HttpServletResponse接口 260
8.3.6 ServletConfig接口 261
8.4 理解Servlet的生命周期 261
8.5 Servlet過濾器 262
8.5.1 過濾器概述 263
8.5.2 過濾器API 263
8.5.3 配置過濾器 264
8.5.4 編寫字元編碼過濾器 265
8.6 照貓畫虎——基本功訓練 267
8.6.1 基本功訓練1——在Servlet中實現
請求轉發 267
8.6.2 基本功訓練2——在Servlet中處理
表單提交的數據 269
8.6.3 基本功訓練3——在Servlet中實現
頁面重定向 270
8.6.4 基本功訓練4——動態生成HTML文檔 271
8.6.5 基本功訓練5——在Servlet中向
客戶端寫Cookie信息 272
8.7 情景套用——拓展與實踐 274
8.7.1 情景套用1——統計網站的訪問量 274
8.7.2 情景套用2——生成網站表單的驗證碼 275
8.7.3 情景套用3——將用戶信息導出到
Excel 277
8.7.4 情景套用4——利用Servlet實現個人
所得稅計算器 278
8.7.5 情景套用5——過濾用戶輸入的
敏感文字 280
8.8 自我測試 283
8.9 行動指南 284
8.10 成功可以複製——圖文世界的締造者
約翰·沃洛克 285
第9堂課 使用EL表達式 287
視頻講解:61分鐘
9.1 EL概述 288
9.1.1 使用EL表達式的前提條件 288
9.1.2 EL表達式的基本語法 289
9.1.3 EL表達式的特點 289
9.2 EL表達式的存取範圍 289
9.3 EL表達式的運算符 290
9.3.1 存取數據運算符 290
9.3.2 算術運算符 291
9.3.3 關係運算符 291
9.3.4 邏輯運算符 292
9.3.5 empty運算符 293
9.3.6 條件運算符 293
9.3.7 運算符的優先權 293
9.4 EL表達式中的保留字 294
9.5 EL表達式中的隱含對象 295
9.5.1 pageContext對象的套用 295
9.5.2 param和paramValues對象的套用 295
9.5.3 header和headerValues對象的套用 296
9.5.4 訪問作用域範圍的隱含對象 296
9.5.5 cookie對象的套用 297
9.5.6 initParam對象的套用 297
9.6 照貓畫虎——基本功訓練 297
9.6.1 基本功訓練1——實現計算卡 297
9.6.2 基本功訓練2——EL實現數字比較卡 298
9.6.3 基本功訓練3——網頁中獲取cookie
的值 298
9.6.4 基本功訓練4——顯示錶單信息 299
9.6.5 基本功訓練5——訪問JavaBean
的屬性 300
9.7 情景套用——拓展與實踐 302
9.7.1 情景套用1——如何禁用EL表達式 302
9.7.2 情景套用2——顯示客戶端使用的
瀏覽器 303
9.7.3 情景套用3——顯示客戶端能接收的
內容類型 303
9.7.4 情景套用4——判斷用戶是否登錄,並
顯示不同提示信息 304
9.7.5 情景套用5——判斷用戶名和密碼是否
為空,空則顯示相應提示信息 305
9.8 自我測試 305
9.9 行動指南 306
9.10 成功可以複製——微型部落格Twitter
創始人埃文·威廉士 307
第10堂課 JSTL核心標籤庫 309
視頻講解:100分鐘
10.1 JSTL技術簡介 310
10.2 表達式標籤 310
10.2.1 <c:out>輸出標籤 310
10.2.2 <c:set>設定標籤 311
10.2.3 <c:remove>移除標籤 313
10.2.4 <c:catch>捕獲異常標籤 314
10.3 流程控制標籤 314
10.3.1 <c:if>條件判斷標籤 314
10.3.2 <c:choose>、<c:when>和<c:otherwise>
標籤 316
10.4 循環標籤 317
10.4.1 <c:forEach>循環標籤 317
10.4.2 <c:forTokens>疊代標籤 318
10.5 URL操作標籤 319
10.5.1 <c:import>檔案導入標籤 320
10.5.2 <c:redirect>重定向標籤 321
10.5.3 <c:url>生成URL地址標籤 322
10.5.4 <c:param>參數傳遞標籤 323
10.6 照貓畫虎——基本功訓練 323
10.6.1 基本功訓練1——<c:forEach>標籤遍歷
數組 323
10.6.2 基本功訓練2——<c:redirect>標籤實現
重定向頁面 324
10.6.3 基本功訓練3——套用JSTL標籤顯示
資料庫中商品信息 324
10.6.4 基本功訓練4——<c:set>設定對象
屬性值 327
10.6.5 基本功訓練5——<c:choose>保留登錄
信息 328
10.7 情景套用——拓展與實戰 329
10.7.1 情景套用1——JSTL標籤實現國際化 329
10.7.2 情景套用2——套用JSTL導入網站
註冊協定 330
10.7.3 情景套用3——JSTL標籤實現網站
計數器 331
10.7.4 情景套用4——<c:if>標籤判斷用戶
最喜愛的水果 332
10.7.5 情景套用5——禁止頁面中出現的
錯誤 333
10.8 自我測試 333
10.9 行動指南 334
10.10 成功可以複製——不斷挑戰自己的
成功徐少春 335
第11堂課 使用Ajax技術 337
視頻講解:88分鐘
11.1 Ajax簡介 338
11.1.1 什麼是Ajax 338
11.1.2 Ajax開發模式 338
11.1.3 Ajax的優點 338
11.2 Ajax基礎知識 339
11.2.1 XMLHttpRequest對象 339
11.2.2 JavaScript腳本語言 341
11.2.3 文檔對象模型DOM 342
11.2.4 XML語言 342
11.2.5 CSS樣式表 342
11.3 傳送請求與處理回響 342
11.3.1 傳送請求 342
11.3.2 處理伺服器回響 343
11.3.3 一個完整的實例 345
11.4 Ajax重構 347
11.5 Ajax開發需要注意的幾個問題 348
11.5.1 瀏覽器兼容性問題 348
11.5.2 性能問題 348
11.5.3 中文編碼問題 349
11.5.4 安全問題 349
11.6 照貓畫虎——基本功訓練 350
11.6.1 基本功訓練1——顯示公告信息 350
11.6.2 基本功訓練2——驗證用戶身份 351
11.6.3 基本功訓練3——創建工具提示 353
11.6.4 基本功訓練4——在網頁中添加實時
走動的系統時鐘 354
11.6.5 基本功訓練5——實現自動保存草稿 355
11.7 情景套用——拓展與實戰 356
11.7.1 情景套用1——自動提交考卷 356
11.7.2 情景套用2——Ajax驗證用戶名是否
被註冊 360
11.7.3 情景套用3——Ajax實現聊天室 362
11.7.4 情景套用4——仿百度搜尋引擎 364
11.7.5 情景套用5——級聯選擇框 366
11.8 自我測試 370
11.9 行動指南 371
11.10 可功可以複製——為編程事業而
奮鬥終生安德斯·海爾斯伯格 371
第3部分 框架篇
第12堂課 Struts2基礎 375
視頻講解:55分鐘
12.1 Struts2簡介 376
12.1.1 Struts2的產生 376
12.1.2 Struts2的結構 376
12.2 第一個Struts2實例 377
12.2.1 獲取Struts2以及相關類庫 377
12.2.2 JSP登錄頁面的創建 377
12.2.3 Action的實現 378
12.2.4 Struts2的配置檔案 378
12.2.5 web.xml的配置 379
12.3 Struts2的配置檔案 379
12.3.1 全局配置檔案struts.properties 380
12.3.2 核心配置檔案struts.xml 380
12.3.3 配置Package和名稱空間 381
12.4 Action的套用 381
12.4.1 Action簡介 381
12.4.2 Action中的方法 382
12.4.3 Action中方法的執行 382
12.5 Struts2的零配置 383
12.5.1 通過@註解實現零配置 383
12.5.2 零配置時web.xml中的配置 383
12.6 照貓畫虎——基本功訓練 384
12.6.1 基本功訓練1——通過URL執行
Action方法 384
12.6.2 基本功訓練2——在Action中配置
執行方法 385
12.6.3 基本功訓練3——通過Struts2註解
實現的零配置 386
12.6.4 基本功訓練4——零配置下訪問Action 387
12.7 情景套用——拓展與實踐 387
12.7.1 情景套用1——實現用戶登錄 387
12.7.2 情景套用2——實現簡單計算器 389
12.7.3 情景套用3——實現成績顯示器 390
12.7.4 情景套用4——實現簡單投票器 391
12.8 自我測試 392
12.9 行動指南 393
12.10 成功可以複製——網際網路的點火人
安德森 393
第13堂課 深入Struts2 395
視頻講解:58分鐘
13.1 Struts2標籤 396
13.1.1 控制標籤 396
13.1.2 數據標籤 399
13.1.3 表單UI標籤 403
13.2 Struts2數據驗證機制 406
13.2.1 手動驗證的實現 407
13.2.2 validate()方法的使用 407
13.2.3 Struts2驗證框架 409
13.2.4 驗證檔案的命名規則 410
13.2.5 了解Struts2的內置驗證器 411
13.3 數據類型轉換器 414
13.3.1 配置轉換器 414
13.3.2 在struts.xml中配置轉換器 414
13.4 Struts2攔截器 415
13.4.1 了解攔截器 415
13.4.2 內置攔截器 416
13.4.3 攔截器的配置 417
13.4.4 攔截器API 417
13.4.5 帶有參數的攔截器 418
13.5 照貓畫虎——基本功訓練 419
13.5.1 基本功訓練1——數據轉換器 419
13.5.2 基本功訓練2——使用數據標籤進行
日期輸出 420
13.5.3 基本功訓練3——表單標籤實現數據
提交 421
13.5.4 基本功訓練4——XML中配置的
數據檢驗器 422
13.6 情景套用——拓展與實踐 423
13.6.1 情景套用1——顯示註冊時間 423
13.6.2 情景套用2——用戶信息的表格輸出 424
13.6.3 情景套用3——聯動選擇框 425
13.6.4 情景套用4——防止網頁數據的
重複提交 425
13.7 自我測試 426
13.8 行動指南 427
13.9 成功可以複製——知識改變命運、
科技改變生活李彥宏 428
第14堂課 Hibernate框架基礎 429
視頻講解:102分鐘
14.1 Hibernate簡介 430
14.1.1 JDBC劣勢 430
14.1.2 ORM中間件 430
14.1.3 Hibernate結構體系 430
14.2 Hibernate入門 431
14.2.1 Hibernate配置檔案解析 431
14.2.2 編寫持久化類 432
14.2.3 編寫映射檔案 433
14.2.4 Hibernate基本數據類型的映射 435
14.3 自動建表技術 435
14.4 Hibernate持久化對象 436
14.4.1 編寫Hibernate的初始化類 437
14.4.2 添加數據 438
14.4.3 刪除數據 439
14.4.4 修改數據 440
14.4.5 查詢數據 441
14.5 Hibernate快取及延遲載入 442
14.5.1 一級快取 442
14.5.2 二級快取 443
14.5.3 Lazy策略 444
14.6 照貓畫虎——基本功訓練 444
14.6.1 基本功訓練1——錄入圖書信息 444
14.6.2 基本功訓練2——套用get()方法查詢
商品信息 446
14.6.3 基本功訓練3——套用load()方法查詢
藥品信息 447
14.6.4 基本功訓練4——刪除編號為1的學生
信息 448
14.7 情景套用——拓展與實踐 449
14.7.1 情景套用1——延遲載入查詢藥品
信息 449
14.7.2 情景套用2——Hibernate實現用戶
註冊 450
14.7.3 情景套用3——修改學生信息 451
14.7.4 情景套用4——批量添加藥品信息 453
14.8 自我測試 454
14.9 行動指南 454
14.10 成功可以複製——中國通信設備
行業的領跑者任正非 455
第15堂課 Hibernate高級套用 457
視頻講解:117分鐘
15.1 關聯關係映射 458
15.1.1 單向關聯與雙向關聯 458
15.1.2 多對一單向關聯映射 458
15.1.3 多對一雙向關聯映射 459
15.1.4 一對一主鍵關聯映射 460
15.1.5 一對一外鍵關聯映射 461
15.1.6 多對多關聯映射 462
15.2 繼承映射 464
15.2.1 類繼承樹映射成一張表 464
15.2.2 每個具體類映射成一張表 465
15.2.3 每個子類映射成一張表 466
15.3 HQL檢索方式 467
15.3.1 HQL基本語法 467
15.3.2 實例對象與動態實例化對象查詢 468
15.3.3 HQL語句的動態賦值 468
15.3.4 條件查詢與使用別名 469
15.4 照貓畫虎——基本功訓練 469
15.4.1 基本功訓練1——HQL排序查詢訂單
信息 469
15.4.2 基本功訓練2——HQL查詢訂單
總金額 471
15.4.3 基本功訓練3——HQL實現統計各
部門人數 471
15.4.4 基本功訓練4——查詢某日期出生的
用戶 472
15.5 情景套用——拓展與實踐 473
15.5.1 情景套用1——多對一映射添加與查詢
圖書信息 473
15.5.2 情景套用2——模糊查詢藥品信息 476
15.5.3 情景套用3——內連線查詢圖書信息 478
15.5.4 情景套用4——利用多態查詢判斷
用戶登錄身份 480
15.6 自我測試 482
15.7 行動指南 483
15.8 成功可以複製——通往成功的橋樑
陳天橋 483
第16堂課 Spring框架 485
視頻講解:172分鐘
16.1 Spring概述 486
16.1.1 初識Spring 486
16.1.2 Spring的獲取 487
16.1.3 簡單配置Spring 487
16.1.4 使用BeanFactory管理Bean 488
16.1.5 ApplicationContext的套用 488
16.2 依賴注入 489
16.2.1 控制反轉與依賴注入 489
16.2.2 Bean的配置 490
16.2.3 Setter注入 491
16.2.4 構造器注入 492
16.2.5 引用其他的Bean 493
16.2.6 匿名內部JavaBean的創建 494
16.3 Spring AOP概述 495
16.3.1 了解AOP 495
16.3.2 AOP的簡單實現 496
16.4 Spring的切入點 497
16.4.1 靜態切入點與動態切入點 498
16.4.2 深入靜態切入點 499
16.4.3 深入切入點底層 499
16.4.4 Spring中其他切入點 500
16.5 Aspect對AOP的支持 500
16.5.1 了解Aspect 500
16.5.2 Spring中的Aspect 501
16.5.3 DefaultPointcutAdvisor切入點
配置器 501
16.5.4 NameMatchMethodPointcutAdvisor
切入點配置器 502
16.6 Spring持久化 502
16.6.1 DAO模式介紹 502
16.6.2 Spring的DAO理念 503
16.6.3 事務套用的管理 505
16.6.4 套用JdbcTemplate運算元據庫 506
16.6.5 與Hibernate整合 507
16.7 照貓畫虎——基本功訓練 508
16.7.1 基本功訓練1——套用IoC實現的
第一個Spring實例 508
16.7.2 基本功訓練2——驗證用戶登錄 510
16.7.3 基本功訓練3——登錄頁面國際化 512
16.7.4 基本功訓練4——利用TransactionTemplate
實現編程式事務管理 513
16.7.5 基本功訓練5——
TransactionProxyFactoryBean
實現聲明式事務管理 515
16.8 情景套用——拓展與實踐 516
16.8.1 情景套用1——在Spring中利用DAO
模式向商品信息表中添加數據 516
16.8.2 情景套用2——Spring AOP實現用戶
註冊 518
16.8.3 情景套用3——利用JdbcTemplate
向員工信息表中添加數據 521
16.8.4 情景套用4——整合Spring和Hibernate
向員工信息表添加數據 523
16.8.5 情景套用5——整合Spring和Hibernate
操作商品庫存表 525
16.9 自我測試 531
16.10 行動指南 532
16.11 成功可以複製——中國第一程式設計師
求伯君 533
第17堂課 Spring MVC框架 535
視頻講解:72分鐘
17.1 Spring MVC簡介 536
17.1.1 Spring MVC的特點 536
17.1.2 Spring MVC的不足 536
17.2 Spring MVC中的組件 536
17.2.1 核心控制器 536
17.2.2 業務控制器 537
17.2.3 控制器映射 537
17.2.4 模型與視圖 537
17.2.5 視圖解析器 537
17.2.6 Command對象 537
17.3 Spring MVC核心控制器 537
17.4 Spring MVC控制器映射 538
17.4.1 配置BeanNameUrlHandlerMapping 538
17.4.2 配置SimpleUrlHandlerMapping 539
17.4.3 多個控制器映射 539
17.5 Spring MVC業務控制器 539
17.5.1 簡單控制器 540
17.5.2 參數映射控制器 542
17.5.3 檔案名稱映射控制器 542
17.5.4 表單控制器 543
17.5.5 多動作控制器 545
17.6 視圖解析器 548
17.6.1 視圖解析器介紹 548
17.6.2 配置InternalResourceViewResolver 549
17.7 常見的其他第三方MVC框架 549
17.7.1 Struts 549
17.7.2 JSF 550
17.7.3 Struts2 550
17.8 照貓畫虎——基本功訓練 550
17.8.1 基本功訓練1——參數映射控制器
映射JSP頁面 550
17.8.2 基本功訓練2——利用命令控制器獲取
URL中的參數查詢信息 551
17.8.3 基本功訓練3——利用表單控制器實現
添加數據的操作 554
17.8.4 基本功訓練4——利用表單控制器實現
驗證處理 555
17.8.5 基本功訓練5——Spring編碼過濾器
解決中文亂碼 557
17.9 情景套用——拓展與實踐 558
17.9.1 情景套用1——利用Spring生成Excel
工作表 558
17.9.2 情景套用2——利用Spring生成PDF
檔案 561
17.9.3 情景套用3——利用Spring的多動作
控制器實現數據查詢和刪除操作 562
17.9.4 情景套用4——利用Spring嚮導控制器
實現分步用戶註冊 565
17.9.5 情景套用5——使用Spring MVC編寫
線上通訊錄 567
17.10 自我測試 573
17.11 行動指南 574
17.12 成功可以複製——征途巨人
史玉柱 575
第4部分 實用技術篇
第18堂課 JSP操作XML 579
視頻講解:72分鐘
18.1 XML簡介 580
18.1.1 XML文檔結構 580
18.1.2 XML語法要求 581
18.1.3 為XML文檔中的元素定義屬性 581
18.2 dom4j創建XML文檔 582
18.2.1 創建XML文檔對象 582
18.2.2 創建根節點 582
18.2.3 添加注釋 583
18.2.4 創建子節點 583
18.2.5 添加屬性 583
18.2.6 設定節點內容 584
18.2.7 設定輸出格式 584
18.2.8 設定編碼 584
18.2.9 輸出XML文檔 585
18.3 解析XML檔案 585
18.3.1 構建XML文檔對象 586
18.3.2 獲取根節點 586
18.3.3 獲取子節點 586
18.3.4 刪除節點 587
18.4 照貓畫虎——基本功訓練 587
18.4.1 基本功訓練1——在控制台上顯示
XML文檔內容 587
18.4.2 基本功訓練2——在瀏覽器上顯示
XML文檔內容 588
18.4.3 基本功訓練3——修改XML檔案中
的公告信息 589
18.4.4 基本功訓練4——刪除公告信息 592
18.5 情景套用——拓展與實踐 594
18.5.1 情景套用1——保存公告信息到
XML檔案 594
18.5.2 情景套用2——將數據表導入到
XML檔案 596
18.5.3 情景套用3——以XML文檔顯示
JSP檔案 599
18.5.4 情景套用4——使用SAX讀取
XML檔案 600
18.6 自我測試 601
18.7 行動指南 602
18.8 成功可以複製——創造網際網路搜尋時代
謝爾蓋·布林 603
第19堂課 檔案上傳與下載 605
視頻講解:97分鐘
19.1 檔案上傳 606
19.2 Common-FileUpload組件核心 608
19.2.1 添加表單及表單元素 608
19.2.2 創建上傳對象 608
19.2.3 解析上傳請求 608
19.3 檔案下載 609
19.3.1 檔案類 609
19.3.2 檔案位元組輸入流 610
19.3.3 位元組輸出流 610
19.4 照貓畫虎——基本功訓練 611
19.4.1 基本功訓練1——檔案的簡單上傳 611
19.4.2 基本功訓練2——讀取表單信息 612
19.4.3 基本功訓練3——限制上傳檔案的
類型 615
19.4.4 基本功訓練4——檔案的簡單下載 616
19.5 情景套用——拓展與實踐 618
19.5.1 情景套用1——隱藏檔案下載真實
路徑 618
19.5.2 情景套用2——顯示上傳檔案的格式 619
19.5.3 情景套用3——檔案的下載 620
19.5.4 情景套用4——批量檔案上傳 623
19.6 自我測試 624
19.7 行動指南 625
19.8 成功可以複製——國中站長的創業
故事李興平 626
第20堂課 動態圖表 627
視頻講解:112分鐘
20.1 JFreeChart簡介 628
20.1.1 認識JFreeChart組件 628
20.1.2 JFreeChart的下載與使用 628
20.2 JFreeChart的核心對象 629
20.2.1 製圖對象 629
20.2.2 製圖工廠對象 630
20.2.3 數據集合對象 630
20.2.4 繪圖區對象 631
20.2.5 坐標軸對象 633
20.2.6 圖片渲染對象 634
20.3 JFreeChart的套用 635
20.3.1 如何獲取圖片 635
20.3.2 創建數據集合與JFreeChart實例 636
20.3.3 圖表相關屬性的設定 638
20.3.4 JFreeChart內置JDBC的使用 639
20.3.5 中文亂碼的解決方案 641
20.4 照貓畫虎——基本功訓練 642
20.4.1 基本功訓練1——繪製餅狀圖 642
20.4.2 基本功訓練2——生成柱狀圖 643
20.4.3 基本功訓練3——繪製折線圖 644
20.4.4 基本功訓練4——生成區域圖表 646
20.4.5 基本功訓練5——生成時序圖表 647
20.5 情景套用——拓展與實踐 649
20.5.1 情景套用1——利用柱狀圖顯示某
網站的訪問量 649
20.5.2 情景套用2——利用餅圖顯示不同
程式語言的市場占有率 650
20.5.3 情景套用3——利用折線圖顯示氣溫
變化情況 652
20.5.4 情景套用4——利用區域圖對比分析
員工業績 653
20.5.5 情景套用5——利用時序圖分析商品
月銷售收益 655
20.6 自我測試 656
20.7 行動指南 657
20.8 成功可以複製——暴雪公司的領航者
邁克·莫漢 658
第21堂課 Java Mail組件 659
視頻講解:103分鐘
21.1 電子郵件協定簡介 660
21.1.1 SMTP簡單郵件傳輸 660
21.1.2 POP3郵局協定 660
21.1.3 IMAP接收郵件協定 660
21.1.4 MIME郵件擴充協定 660
21.2 建立Java Mail開發環境 661
21.2.1 獲取Java Mail API 661
21.2.2 獲取Java Mail API的激活框架 661
21.2.3 安裝和配置郵件伺服器 661
21.3 傳送郵件的API 663
21.3.1 Session類 664
21.3.2 Message類中與傳送郵件相關的方法 665
21.3.3 Address類 667
21.3.4 Authenticator類 667
21.3.5 Transport類 667
21.4 接收郵件的API 669
21.4.1 Store類 669
21.4.2 Folder類 669
21.4.3 Flags類 670
21.4.4 Message類中與接收郵件相關的
方法 671
21.5 照貓畫虎——基本功訓練 671
21.5.1 基本功訓練1——實現信箱登錄的功能 671
21.5.2 基本功訓練2——傳送普通文本郵件 672
21.5.3 基本功訓練3——傳送HTML格式的
郵件 674
21.5.4 基本功訓練4——郵件群發 677
21.6 情景套用——拓展與實踐 678
21.6.1 情景套用1——傳送帶附屬檔案的郵件 678
21.6.2 情景套用2——群發HTML格式的
郵件 681
21.6.3 情景套用3——獲取郵件總數 683
21.6.4 情景套用4——通過信箱激活用戶註冊 684
21.7 自我測試 687
21.8 行動指南 688
21.9 成功可以複製——IT大王王志東 689
第5部分 實戰篇
第22堂課 部落格系統 693
視頻講解:73分鐘
22.1 系統概述 694
22.1.1 開發背景 694
22.1.2 系統功能結構 694
22.1.3 系統流程 695
22.2 技術要點 695
22.2.1 整合Struts2與Hibernate3 695
22.2.2 套用JavaScript對複選框進行操作 696
22.3 設計資料庫 697
22.3.1 設計E-R圖 697
22.3.2 設計資料庫表 698
22.4 設計公共模組 699
22.4.1 編寫Hibernate配置檔案 699
22.4.2 編寫數據持久化類 700
22.5 設計首頁面 703
22.5.1 首頁操作實現類 703
22.5.2 首頁顯示的實現 704
22.6 設計用戶管理模組 705
22.6.1 用戶實體類 705
22.6.2 用戶的實現類 706
22.6.3 實現用戶註冊 706
22.6.4 推薦部落格操作 709
22.7 設計文章模組 710
22.7.1 文章實體類 710
22.7.2 文章的實現類 711
22.7.3 操作文章類型 711
22.7.4 添加文章 713
22.7.5 查詢文章 714
22.7.6 文章的詳細查詢 716
22.7.7 推薦文章的操作 716
22.8 疑難問題 717
22.8.1 Struts2的中文亂碼問題 717
22.8.2 關於重寫模板的問題 718
22.9 本堂課小結 718
特別提醒:
親愛的讀者朋友,由於近期紙張價格和印製成本大幅上漲,為不增加讀者朋友的負擔,又不減少書的內容,本書以下章節內容不得不放在配書光碟中,由此給您帶來了不便,在此深表歉意。
第23堂課 JSP+Hibernate實現留言模組 719
視頻講解:72分鐘
(本章內容在配書光碟中)
23.1 項目說明 720
23.1.1 實現功能 720
23.1.2 系統流程 720
23.1.3 邏輯分層結構 721
23.2 技術要點 721
23.2.1 確定實體及關係 721
23.2.2 ThreadLocal的使用 722
23.3 實現過程 722
23.3.1 搭建開發環境 723
23.3.2 實體類與映射 724
23.3.3 註冊模組 727
23.3.4 用戶登錄 730
23.3.5 實現留言 732
23.3.6 分頁查看留言信息 734
23.3.7 管理員相關操作 739
23.4 本堂課小結 743
第24堂課 用戶管理系統 745
視頻講解:62分鐘
(本章內容在配書光碟中)
24.1 系統功能模組設計 746
24.2 設計資料庫 746
24.3 資料夾結構設計 747
24.4 實體映射 747
24.4.1 部門信息 747
24.4.2 用戶信息 748
24.5 設計運算元據的接口與類 749
24.5.1 部門信息DAO接口IDeptInfoDao 749
24.5.2 部門信息DAO實現類DeptInfoDao 750
24.5.3 用戶信息DAO接口IUserInfoDao 750
24.5.4 用戶信息DAO實現類IUserInfoDao 751
24.6 登錄子模組 751
24.6.1 登錄子模組控制器 752
24.6.2 登錄子模組JSP頁面 753
24.7 部門管理子模組 755
24.7.1 部門管理子模組控制器 756
24.7.2 部門管理子模組JSP頁面 757
24.8 用戶管理子模組 759
24.8.1 用戶管理子模組檔案上傳類 760
24.8.2 用戶管理子模組控制器類 761
24.8.3 用戶管理子模組JSP頁面 763
24.9 配置檔案 765
24.9.1 創建Spring配置檔案
applicationContext.xml 766
24.9.2 配置web.xml 768
24.10 本堂課小結 769
附錄A Java程式編碼規範 771
(本章內容在配書光碟中)
A.1 命名規則 771
A.1.1 數據類型簡寫規則 771
A.1.2 變數及常量名稱命名規則 771
A.1.3 類命名規則 771
A.1.4 成員變數命名規則 772
A.1.5 方法命名規則 772
A.1.6 接口命名規則 772
A.2 代碼版式 772
A.2.1 統一代碼縮進 772
A.2.2 合理使用空行 772
A.2.3 代碼換行 773
A.2.4 空格的使用 773
A.3 代碼注釋 773
A.3.1 注釋的目的 773
A.3.2 代碼注釋規範 773
A.4 資料庫編程命名規範 774
A.4.1 資料庫命名規範 774
A.4.2 數據表命名規範 774
A.4.3 欄位命名規範 774
A.4.4 視圖命名規範 775
A.4.5 存儲過程命名規範 775
A.4.6 觸發器命名規範 775

相關詞條

熱門詞條

聯絡我們