本書全面而又詳細地介紹了Java Web應用項目開發(fā)需要的各種知識與技能,主要包括開發(fā)環(huán)境的安裝與配置、Servlet、JSP、過濾器、監(jiān)聽器、JavaBean、BC等應用。本書涵蓋了5個小項目: 登錄驗證器、網(wǎng)絡購物車、編碼過濾器、留言板、用戶信息管理小系統(tǒng),是一本以“項目驅(qū)動、案例教學、理論與實踐相結(jié)合”教學方法為主的一體化教材。
本書結(jié)構嚴謹,層次分明,不僅適合作為計算機及相關專業(yè)Java Web開發(fā)的教材,也可作為專業(yè)技術人員的參考書。
隨著信息社會的發(fā)展,傳統(tǒng)的教育模式已難以滿足社會需要。一方面,大量畢業(yè)生無法找到滿意的工作,另一方面,用人單位卻在感嘆無法招到符合職位要求的員工。因此,積極推進教學改革,根據(jù)市場需求調(diào)整課程和教學,已成為多數(shù)院校專業(yè)建設和課程改革的共識。
本書是根據(jù)教學改革要求,采用項目導向、任務驅(qū)動等新的教學思路編寫的。它改變了以往遵循章節(jié)設計的教學思路,用項目和細化的小任務貫穿整個教材的知識體系,旨在訓練學生的崗位工作技能,培養(yǎng)其解決實際問題的綜合能力。全書由5個項目組成,每個項目又涵蓋了若干實施該項目的工作任務,細化了項目學習目標,條理清晰,層次分明,方便讀者一步步實現(xiàn)學習目標。
本書在介紹知識點的同時還列舉了幾十個實例。它們都源于教學、科研和企業(yè)、行業(yè)的最新典型項目,內(nèi)容全面,貼近實際,具有可讀性、趣味性和廣泛性。
本書由王娜編寫。編者在編寫過程中參考了大量技術資料,吸取了許多同仁、企業(yè)專家的寶貴經(jīng)驗,建立了以“工作項目為導向,用工作任務為驅(qū)動,以行動體系為框架,以典型案例情境為引導”的教材體系。
項目1登錄驗證器/1
1.1項目描述/1
1.2學習目標/1
1.3項目實施/1
任務1.3.1Web應用入門/1
任務1.3.2Java Web環(huán)境搭建/6
任務1.3.3Servlet基礎知識/15
任務1.3.4Servlet的生命周期/20
任務1.3.5Servlet API/27
任務1.3.6登錄驗證器的編寫/36
1.4學習總結(jié)/43
1.5課后習題/43項目2網(wǎng)絡購物車/45
2.1項目描述/45
2.2學習目標/45
2.3項目實施/45
任務2.3.1服務器應用對象/45
任務2.3.2頁面跳轉(zhuǎn)與包含/54
任務2.3.3Servlet間傳遞參數(shù)的方法/60
任務2.3.4購物車設計/70
2.4學習總結(jié)/80
2.5課后習題/80項目3編碼過濾器/81
3.1項目描述/81
3.2學習目標/81
3.3項目實施/81
任務3.3.1與ServletContext對象相關的
偵聽器和事件/81
任務3.3.2與HttpSession對象相關的
偵聽器和事件/87任務3.3.3與ServletRequest對象相關的
偵聽器/90
任務3.3.4過濾器基礎/91
任務3.3.5創(chuàng)建Servlet過濾器/93
任務3.3.6編碼過濾器/98
3.4學習總結(jié)/105
3.5課后習題/105項目4留言板/106
4.1項目描述/106
4.2學習目標/106
4.3項目實施/106
任務4.3.1JSP簡介/106
任務4.3.2JSP頁面基本結(jié)構/113
任務4.3.3JSP隱含對象/129
任務4.3.4JSP范圍/150
任務4.3.5留言板/150
4.4學習總結(jié)/156
4.5課后習題/157項目5用戶信息管理小系統(tǒng)/158
5.1項目描述/158
5.2學習目標/158
5.3項目實施/158
任務5.3.1JavaBean簡介/158
任務5.3.2JSP調(diào)用JavaBean/160
任務5.3.3JSP與Servlet間傳遞參數(shù)的
三個作用范圍/166
任務5.3.4數(shù)據(jù)庫訪問/166
任務5.3.5用戶信息管理小系統(tǒng)/177
5.4學習總結(jié)/194
5.5課后習題/194參考文獻/195
第1章走進Qt/1
1.1Qt簡介/1
1.1.1認識Qt/1
1.1.2Qt開發(fā)環(huán)境的主要構成介紹/2
1.1.3使用Qt開發(fā)C++應用程序的優(yōu)勢/4
1.2Qt的下載、安裝與配置/4
1.2.1Windows平臺下Qt的C++語言開發(fā)環(huán)境安裝與配置/4
1.2.2Linux平臺下Qt的C++語言開發(fā)環(huán)境安裝與配置/7
1.3Qt Creator集成開發(fā)環(huán)境/12
1.3.1Qt Creator集成開發(fā)環(huán)境/12
1.3.2Qt Creator常用菜單功能介紹/13
1.3.3使用Qt創(chuàng)建項目/14
1.3.4Qt開發(fā)環(huán)境的使用方法/18
1.3.5Qt項目文件的建立、添加和刪除/18
1.3.6編輯項目的源程序文件和界面文件/19
1.3.7項目編譯模式及其配置/20
1.3.8編譯并鏈接生成項目文件/20
1.3.9糾正編譯或連接出現(xiàn)的錯誤/20
1.3.10Qt工具欄的使用/21
1.4Qt Creator聯(lián)機幫助系統(tǒng)及其使用/21
1.4.1Qt中如何尋求幫助/21
1.4.2幫助文件的打開及使用源代碼
編輯器/22
1.4.3縮小查找范圍/23
1.5使用Qt Creator開發(fā)C++語言程序/24
1.5.1Windows平臺下使用Qt開發(fā)C++語言程序/24
1.5.2Linux平臺下使用Qt開發(fā)C++語言程序/29
1.6習題/36第2章C++程序設計基礎/37
2.1C++語言簡介/37
2.1.1認識C++/37
2.1.2C++的標準化/37
2.2C++源程序的結(jié)構/38
2.2.1C++源程序舉例/38
2.2.2C++源程序的結(jié)構/40
2.2.3C++語言的基本語法成分/41
2.3基本數(shù)據(jù)與表達式/42
2.3.1數(shù)據(jù)類型/42
2.3.2常量和變量/44
2.3.3運算符與表達式/46
2.4C++中的輸入輸出/47
2.5程序的控制結(jié)構/50
2.5.1順序結(jié)構/50
2.5.2選擇結(jié)構/50
2.5.3循環(huán)結(jié)構/55
2.5.4跳轉(zhuǎn)語句/58
2.6函數(shù)/59
2.6.1函數(shù)/59
2.6.2函數(shù)的其他特性/62
2.7數(shù)組與字符串/65
2.7.1數(shù)組/65
2.7.2字符串與string類/67
2.8指針與引用/70
2.8.1指針/70
2.8.2引用/71
2.9const修飾符/76
2.10動態(tài)內(nèi)存分配/79
2.11習題/82
2.11.1選擇題/82
2.11.2填空題/83
2.11.3編程題/84第3章類與對象/85
3.1面向?qū)ο蟪绦蛟O計概述/85
3.1.1面向?qū)ο蟮幕靖拍?85
3.1.2面向?qū)ο蟮幕咎卣?88
3.1.3面向?qū)ο蟮恼Z言簡介/89
3.2類與對象的定義/90
3.2.1類的定義/90
3.2.2對象的定義與使用/97
3.2.3類的作用域/101
3.2.4類的封裝性和信息隱藏——公有接口與私有實現(xiàn)的分離/102
3.3構造函數(shù)與析構函數(shù)/104
3.3.1構造函數(shù)/104
3.3.2復制構造函數(shù)/113
3.3.3析構函數(shù)/118
3.4對象的深復制/120
3.5靜態(tài)成員/122
3.5.1靜態(tài)數(shù)據(jù)成員/122
3.5.2靜態(tài)成員函數(shù)/124
3.6常類型/127
3.6.1常對象/127
3.6.2類的常數(shù)據(jù)成員/128
3.6.3類的常成員函數(shù)/129
3.7友元/131
3.7.1友元函數(shù)/131
3.7.2友元類/136
3.7.3友元應用舉例/138
3.8對象數(shù)組與類的組合/140
3.8.1對象數(shù)組/140
3.8.2類的組合/144
3.9程序舉例/147
3.10習題/149
3.10.1選擇題/149
3.10.2問答及編程題/152第4章繼承與派生/154
4.1單繼承/155
4.1.1繼承的定義/155
4.1.2訪問控制/157
4.1.3重名的成員變量和成員函數(shù)/160
4.1.4在派生類中訪問靜態(tài)成員/162
4.1.5基類的初始化/163
4.2多繼承/168
4.2.1派生類的構造與訪問/168
4.2.2虛繼承/169
4.3習題/170第5章虛函數(shù)與多態(tài)/171
5.1類指針的關系/172
5.2靜態(tài)聯(lián)編和動態(tài)聯(lián)編/174
5.3虛函數(shù)/175
5.4純虛函數(shù)和抽象類/178
5.5習題/181第6章運算符重載/182
6.1運算符重載概述/183
6.1.1運算符重載的實質(zhì)/183
6.1.2用友元函數(shù)和成員函數(shù)重載運算符的異同/186
6.1.3++和--運算符的重載/188
6.2習題/191第7章模板和異常處理/192
7.1模板的概念/192
7.2函數(shù)模板/192
7.2.1函數(shù)模板的聲明/192
7.2.2函數(shù)模板的實例化/193
7.2.3函數(shù)模板應用舉例/195
7.3類模板/197
7.3.1類模板的定義/197
7.3.2類模板的實例化/198
7.3.3類模板的應用舉例/199
7.4標準模板庫/202
7.4.1容器/203
7.4.2算法/206
7.4.3迭代器/209
7.5異常處理/210
7.5.1異常處理概述/210
7.5.2異常處理的實現(xiàn)/211
7.5.3標準庫中的異常類型/216
7.6習題/218
7.6.1選擇題/218
7.6.2編程題/218第8章輸入輸出流與命名空間/220
8.1I/O流的概念/220
8.2標準I/O流/221
8.2.1標準I/O流概述/221
8.2.2標準輸出/222
8.2.3標準輸入/224
8.2.4重載插入/提取函數(shù)/225
8.3格式控制/228
8.3.1用ios成員函數(shù)格式化/228
8.3.2用操縱算子格式化/231
8.4文件處理/232
8.4.1文件和流/232
8.4.2文件的打開和關閉/233
8.4.3文本文件/234
8.4.4二進制文件/235
8.5命名空間/238
8.6習題/241第9章圖形界面程序設計基礎/242
9.1圖形界面程序設計基礎知識/242
9.1.1C++中的對象/242
9.1.2Qt C++中的窗體/243
9.1.3Qt C++中的部件和部件類/243
9.1.4Qt C++中的屬性(Properties)窗口/244
9.2Qt的信號和槽/244
9.3Qt的元對象系統(tǒng)/246
9.4Qt命令行法開發(fā)圖形界面程序/246
9.5Qt中如何實現(xiàn)用戶操作的響應/249
9.6Qt中如何實現(xiàn)窗口部件的布局/250
9.7習題/252第10章對話框編程/254
10.1代碼編程創(chuàng)建對話框/254
10.2對話框的可視化設計/263
10.3可擴展的對話框/271
10.4對話框的動態(tài)實現(xiàn)/279
10.5Qt內(nèi)置的窗口部件和對話框類/280
10.6習題/285第11章使用Qt開發(fā)文本編輯器/286
11.1Qt Creator的下載和安裝/286
11.2Qt Creator開發(fā)簡單的文本編輯器/287
11.2.1創(chuàng)建項目TextEditor/287
11.2.2TextEditor的主窗口、菜單和
圖標/289
11.2.3TextEditor文件新建、保存和另存為的功能實現(xiàn)/300
11.2.4TextEditor文件的打開、關閉和退出系統(tǒng)的功能實現(xiàn)/308
11.2.5TextEditor文本復制、剪切、粘貼以及撤銷的功能實現(xiàn)/309
11.2.6TextEditor文本查找功能的
實現(xiàn)/310
11.2.7TextEditor查找和定位函數(shù)的
方法/311
11.2.8TextEditor中實現(xiàn)狀態(tài)欄/316
11.3習題/318附錄AC++關鍵字/319附錄BC++運算符/320
參考文獻/321