內容簡介
全書共分5部分26章,包括走進JSP、掌握JSP語法、JSP內置對象、Servlet技術、JSP使用Model2實現登錄模組、EL表達式、JSTL核心標籤庫、結合JSTL與EL技術開發通訊錄模組、JSP操作XML、JavaScript腳本語言、Ajax實現用戶註冊模組、Struts框架、套用Struts實現網站流量統計模組、Hibernate框架、Hibernate高級套用、JSP+Hibernate實現留言模組、Spring框架、Spring MVC框架、Spring+Hibernate實現用戶管理模組、數據分頁、檔案上傳與下載、PDF與Excel組件、E-mail組件、動態圖表、醫藥管理系統、高校學生選課系統。所有知識都結合具體實例進行介紹,涉及的程式代碼給出了詳細的注釋,突出“基礎”、“全面”、“深入”,同時就像書名所暗示的一樣,強調“實戰效果”,從而使讀者能夠輕鬆領會Java Web程式開發的精髓,快速提高開發技能。
《Java Web開發實戰寶典》適合有志於從事軟體開發的初學者、高校計算機相關專業學生和畢業生,也可作為軟體開發人員的參考手冊,或者高校的教學參考書。
目錄
第1部分 JSP基礎
第1章 走進JSP 3
視頻講解:10分鐘
1.1 JSP概述 4
1.1.1 什麼是JSP 4
1.1.2 項目成功案例 4
1.1.3 如何學好JSP 6
1.2 JSP技術特徵 6
1.2.1 跨平台 7
1.2.2 業務代碼分離 7
1.2.3 組件重用 7
1.2.4 繼承Java Servlet功能 7
1.2.5 預編譯 7
1.3 Java Web伺服器 7
1.3.1 Tomcat伺服器 8
1.3.2 Resin伺服器 8
1.3.3 JBoss伺服器 8
1.3.4 WebSphere伺服器 8
1.3.5 WebLogic伺服器 8
1.4 MySQL資料庫的下載與安裝 8
1.4.1 下載MySQL 9
1.4.2 安裝與配置MySQL 10
1.4.3 下載並安裝GUI工具 12
1.5 MyEclipse的下載、安裝與配置 12
1.5.1 下載MyEclipse 12
1.5.2 安裝MyEclipse 14
1.5.3 配置MyEclipse 16
1.5.4 修改JSP編輯器編碼格式 16
1.5.5 設定JSP檔案關聯編輯器 17
1.5.6 配置外置伺服器 17
1.6 開發第一個JSP程式 18
1.6.1 編寫JSP程式 19
1.6.2 運行JSP程式 20
1.7 JSP常用資源 21
1.7.1 JSP資源 21
1.7.2 Eclipse資源 21
1.8 本章小結 22
第2章 掌握JSP語法 23
視頻講解:40分鐘
2.1 了解JSP的基本構成 24
2.2 指令標籤 24
2.2.1 page指令 25
2.2.2 include指令 28
2.2.3 taglib指令 29
2.3 嵌入Java代碼 29
2.3.1 代碼片段 29
2.3.2 聲明 31
2.3.3 JSP表達式 31
2.4 注釋 31
2.4.1 HTML注釋 31
2.4.2 JSP注釋 32
2.4.3 動態注釋 32
2.4.4 代碼注釋 32
2.5 JSP動作標籤 33
2.5.1 33
2.5.2 35
2.5.3 36
2.5.4 操作JavaBean的動作標籤 36
2.6 實戰 37
2.7 本章小結 38
2.8 實戰練習 38
第3章 JSP內置對象 39
視頻講解:82分鐘
3.1 JSP內置對象的概述 40
3.2 request對象 40
3.2.1 獲取請求參數值 40
3.2.2 解決中文亂碼 41
3.2.3 獲取Form表單的信息 41
3.2.4 獲取請求客戶端信息 43
3.2.5 在作用域中管理屬性 44
3.2.6 cookie管理 45
3.2.7 獲取瀏覽器使用的語言 47
3.3 response對象 47
3.3.1 重定向網頁 47
3.3.2 處理HTTP檔案頭 47
3.3.3 設定輸出緩衝 48
3.4 session對象 48
3.4.1 創建及獲取session信息 49
3.4.2 從會話中移除指定的綁定對象 50
3.4.3 銷毀session 50
3.4.4 會話逾時的管理 50
3.4.5 session對象的套用 51
3.5 application對象 53
3.5.1 訪問應用程式初始化參數 54
3.5.2 管理應用程式環境屬性 54
3.6 out對象 55
3.6.1 管理回響緩衝 55
3.6.2 向客戶端輸出數據 55
3.7 其他內置對象 56
3.7.1 獲取會話範圍的pageContext對象 56
3.7.2 讀取web.xml配置信息的config對象 56
3.7.3 應答或請求的page對象 57
3.7.4 獲取異常信息的exception對象 57
3.8 實戰 58
3.8.1 application實現網頁計數器 58
3.8.2 在提交表單時加入驗證碼 59
3.9 本章小結 61
3.10 實戰練習 62
第4章 Servlet技術 63
視頻講解:72分鐘
4.1 Servlet基礎 64
4.1.1 Servlet與Servlet容器 64
4.1.2 Servlet技術特點 64
4.1.3 Servlet技術功能 65
4.1.4 Servlet與JSP的區別 65
4.1.5 Servlet代碼結構 66
4.1.6 簡單的Servlet程式 67
4.2 Servlet開發 68
4.2.1 Servlet的創建 68
4.2.2 Servlet配置的相關元素 69
4.3 Servlet API編程常用的接口和類 70
4.3.1 Servlet接口 70
4.3.2 ServletConfig接口 71
4.3.3 HttpServletRequest接口 71
4.3.4 HttpServletResponse接口 73
4.3.5 GenericServlet類 74
4.3.6 HttpServlet類 74
4.4 Servlet過濾器 75
4.4.1 過濾器概述 75
4.4.2 Filter API 75
4.4.3 過濾器的配置 77
4.4.4 過濾器典型套用 78
4.5 實戰 80
4.5.1 JSP與Servlet實現用戶註冊 80
4.5.2 過濾非法文字 84
4.6 本章小結 87
4.7 實戰練習 88
第5章 JSP使用Model2實現登錄模組 89
視頻講解:48分鐘
5.1 JavaBean 90
5.1.1 JavaBean簡介 90
5.1.2 90
5.1.3 92
5.1.4 94
5.1.5 JavaBean的作用域 96
5.2 Model1模式 97
5.3 Model2模式 100
5.3.1 MVC原理 100
5.3.2 JSP+Servlet+JavaBean 101
5.4 兩種模式的比較 102
5.5 登錄模組的實現 103
5.5.1 模組介紹 103
5.5.2 關鍵技術 104
5.5.3 資料庫設計 105
5.5.4 JavaBean設計 105
5.5.5 實現過程 109
5.6 運行項目 115
5.7 本章小結 116
5.8 實戰練習 116
第2部分 高級技術
第6章 EL表達式語言 119
視頻講解:60分鐘
6.1 EL概述 120
6.1.1 使用EL表達式的前提條件 120
6.1.2 EL表達式的基本語法 121
6.1.3 EL表達式的特點 121
6.2 EL表達式的存取範圍 122
6.3 EL表達式的運算符 122
6.3.1 存取數據運算符“[]”和“.” 122
6.3.2 算術運算符 123
6.3.3 關係運算符 124
6.3.4 邏輯運算符 124
6.3.5 empty運算符 125
6.3.6 條件運算符 126
6.3.7 運算符的優先權 126
6.4 EL表達式中的保留字 126
6.5 EL表達式中的隱含對象 127
6.5.1 pageContext對象的套用 127
6.5.2 param和paramValues對象的套用 127
6.5.3 header和headerValues對象的套用 128
6.5.4 訪問作用域範圍的隱含對象 129
6.5.5 cookie對象的套用 129
6.5.6 initParam對象的套用 129
6.6 實戰 130
6.6.1 套用EL表達式訪問JavaBean的屬性 130
6.6.2 套用EL表達式顯示投票結果 131
6.7 本章小結 134
6.8 實戰練習 134
第7章 JSTL核心標籤庫 135
視頻講解:87分鐘
7.1 JSTL簡介 136
7.1.1 下載和配置JSTL 136
7.1.2 JSTL標籤庫簡介 137
7.2 表達式標籤 138
7.2.1 輸出標籤 138
7.2.2 設定標籤 139
7.2.3 移除標籤 141
7.2..4 捕獲異常標籤 142
7.3 條件標籤 142
7.3.1 標籤 143
7.3.2 、和標籤 144
7.4 循環標籤 146
7.4.1 標籤 146
7.4.2 標籤 148
7.5 URL操作標籤 149
7.5.1 檔案導入標籤 149
7.5.2 重定向標籤 151
7.5.3 生成URL地址標籤 152
7.5.4 參數傳遞標籤 153
7.6 實戰 154
7.6.1 套用JSTL顯示資料庫中的商品信息 154
7.6.2 JSTL在電子商城網站中的套用 159
7.7 本章小結 162
7.8 實戰練習 162
第8章 結合JSTL與EL技術開發通訊錄模組 163
視頻講解:73分鐘
8.1 模組概述 164
8.1.1 功能描述 164
8.1.2 系統流程 164
8.1.3 主頁預覽 165
8.2 關鍵技術 165
8.3 資料庫設計 166
8.4 實現過程 167
8.4.1 搭建開發環境 167
8.4.2 編寫資料庫連線及操作的公共類 167
8.4.3 實現用戶註冊 170
8.4.4 實現用戶登錄 173
8.4.5 實現通訊錄模組主頁 176
8.4.6 實現添加聯繫人 180
8.4.7 實現修改聯繫人 183
8.4.8 實現刪除聯繫人 186
8.5 運行項目 186
8.6 本章小結 188
第9章 JSP操作XML 189
視頻講解:107分鐘
9.1 XML簡介 190
9.1.1 XML文檔結構 190
9.1.2 XML語法要求 191
9.1.3 為XML文檔中的元素定義屬性 192
9.1.4 XML的注釋 192
9.1.5 處理字元數據 192
9.2 dom4j概述 194
9.2.1 dom4j簡介 194
9.2.2 dom4j的下載與配置 195
9.3 創建XML文檔 196
9.3.1 創建XML文檔對象 196
9.3.2 創建根節點 197
9.3.3 添加注釋 197
9.3.4 添加屬性 198
9.3.5 創建子節點 198
9.3.6 設定節點的內容 198
9.3.7 設定編碼 199
9.3.8 設定輸出格式 199
9.3.9 輸出XML文檔 200
9.4 解析XML文檔 201
9.4.1 構建XML文檔對象 201
9.4.2 獲取根節點 201
9.4.3 獲取子節點 202
9.5 修改XML文檔 203
9.5.1 修改節點 203
9.5.2 刪除節點 204
9.6 實戰 204
9.6.1 保存公告信息到XML檔案 204
9.6.2 對保存到XML檔案中的公告信息進行管理 207
9.7 本章小結 214
9.8 實戰練習 214
第10章 JavaScript腳本語言 215
視頻講解:204分鐘
10.1 了解JavaScript 216
10.1.1 什麼是JavaScript 216
10.1.2 JavaScript的主要特點 216
10.1.3 JavaScript與Java的區別 216
10.2 在Web頁面中使用JavaScript 217
10.2.1 在頁面中直接嵌入JavaScript 217
10.2.2 連結外部JavaScript 218
10.3 JavaScript語言基礎 219
10.3.1 JavaScript的語法 219
10.3.2 JavaScript中的關鍵字 220
10.3.3 了解JavaScript的數據類型 220
10.3.4 變數的定義及使用 222
10.3.5 運算符的套用 224
10.4 流程控制語句 226
10.4.1 if條件判斷語句 227
10.4.2 switch多路分支語句 229
10.4.3 for循環語句 231
10.4.4 while循環語句 233
10.4.5 do…while循環語句 234
10.4.6 break語句 235
10.4.7 continue語句 236
10.5 使用正則表達式 236
10.5.1 正則表達式的語法 236
10.5.2 創建正則表達式(RegExp)對象 238
10.5.3 使用RegExp對象執行模式匹配 239
10.6 函式 242
10.6.1 函式的定義 242
10.6.2 函式的調用 243
10.6.3 匿名函式 244
10.7 事件和事件處理程式 244
10.7.1 什麼是事件和事件處理程式 244
10.7.2 JavaScript的常用事件 245
10.7.3 事件處理程式的調用 245
10.8 常用對象 246
10.8.1 String對象 247
10.8.2 Math對象 251
10.8.3 Date對象 252
10.8.4 Window對象 255
10.9 DOM技術 259
10.9.1 DOM概述 259
10.9.2 DOM的分層結構 259
10.9.3 遍歷文檔 260
10.9.4 獲取文檔中的指定元素 262
10.9.5 操作文檔 263
10.9.6 與DHTML相對的DOM 265
10.10 實戰 266
10.10.1 檢測表單元素是否為空 266
10.10.2 禁止滑鼠右鍵和鍵盤相關事件 267
10.11 本章小結 270
10.12 實戰練習 270
第11章 Ajax實現用戶註冊模組 271
視頻講解:127分鐘
11.1 Ajax簡介 272
11.1.1 什麼是Ajax 272
11.1.2 Ajax的開發模式 272
11.1.3 Ajax的優點 273
11.2 Ajax使用的技術 273
11.2.1 XMLHttpRequest 273
11.2.2 JavaScript腳本語言 276
11.2. 3 DOM 276
11.2. 4 XML語言 277
11.2. 5 CSS 277
11.3 Ajax工作流程 277
11.3.1 傳送請求 277
11.3.2 處理伺服器回響 279
11.3.3 一個完整的實例 280
11.4 Ajax重構 282
11.5 Ajax開發需要注意的幾個問題 286
11.5. 1 瀏覽器兼容性問題 286
11.5. 2 安全問題 287
11.5. 3 性能問題 287
11.5.4 中文編碼問題 288
11.6 開發用戶註冊模組 288
11.6.1 模組概述 288
11.6.2 系統流程 289
11.6.3 關鍵技術 291
11.6.4 資料庫設計 291
11.6.5 實現過程 291
11.7 實戰 303
11.8 本章小結 307
11.9 實戰練習 307
第3部分 框架技術
第12章 Struts框架 311
視頻講解:86分鐘
12.1 MVC設計模式 312
12.2 Struts體系結構 313
12.2.1 Struts介紹 313
12.2.2 Struts體系結構 313
12.3 Struts工作流程 313
12.4 struts-config.xml配置檔案 315
12.4.1 data-sources元素 315
12.4.2 form-beans元素 316
12.4.3 global-exceptios元素 316
12.4.4 global-forwards元素 317
12.4.5 controller元素 318
12.4.6 action-mappings元素 319
12.4.7 message-resources元素 320
12.4.8 plug-in元素 321
12.4.9 配置多套用模組 321
12.5 視圖組件ActionForm 323
12.5.1 視圖概述 323
12.5.2 創建ActionForm 324
12.5.3 配置動態ActionForm 326
12.6 控制器組件Action 331
12.6.1 控制器組件類 331
12.6.2 org.apache.actions.Action類 332
12.6.3 org.apache.struts.actions.DispatchAction類 334
12.6.4 org.apache.struts.actions.ForwardAction 336
12.7 Struts標籤庫 337
12.7.1 HTML標籤庫 338
12.7.2 Bean標籤庫 340
12.7.3 Logic標籤庫 342
12.8 實戰 343
12.9 本章小結 346
12.10 實戰練習 346
第13章 套用Struts實現網站流量統計模組 347
視頻講解:86分鐘
13.1 模組概述 348
13.1.1 功能結構 348
13.1.2 系統流程 348
13.1.3 邏輯分層結構 349
13.2 技術要點 350
13.2.1 繪製條形統計圖 350
13.2.2 獲取客戶端信息 352
13.2.3 iframe浮動框架 352
13.2.4 獲取百分比 353
13.3 資料庫設計 353
13.4 實現過程 355
13.4.1 獲取系統時間 355
13.4.2 配置數據源 356
13.4.3 編寫與數據表對應的Java Bean 356
13.4.4 首頁設計 357
13.4.5 日時段分析 364
13.4.6 月回訪統計 371
13.4.7 日客戶端分析 378
13.5 運行項目 382
13.6 本章小結 382
第14章 Hibernate框架 383
視頻講解:76分鐘
14.1 Hibernate簡介 384
14.1.1 理解ORM原理 384
14.1.2 Hibernate的結構體系` 384
14.1.3 Hibernate實例狀態 386
14.1.4 Hibernate的適用性 387
14.2 Hibernate入門 387
14.2.1 Hibernate包的下載與放置 387
14.2.2 Hibernate配置檔案解析 388
14.2.3 編寫持久化類 389
14.2.4 編寫映射檔案 390
14.2.5 編寫Hibernate的初始化類 392
14.3 自動建表技術 394
14.4 Hibernate持久化對象 395
14.4.1 添加數據 396
14.4.2 查詢數據 397
14.4.3 刪除數據 400
14.4.4 修改數據 401
14.5 Hibernate快取及延遲載入 403
14.5.1 一級快取 403
14.5.2 二級快取 404
14.5.3 Lazy策略 406
14.6 實戰 408
14.6.1 用戶註冊 408
14.6.2 修改數據 412
14.7 本章小結 416
14.8 實戰練習 416
第15章 Hibernate高級套用 417
視頻講解:107分鐘
15.1 關聯關係映射 418
15.1.1 單向關聯與雙向關聯 418
15.1.2 多對一單向關聯映射 418
15.1.3 多對一雙向關聯映射 420
15.1.4 一對一主鍵關聯映射 422
15.1.5 一對一外鍵關聯映射 424
15.1.6 多對多關聯映射 425
15.1.7 級聯操作在關聯中的使用 426
15.2 繼承映射 428
15.2.1 類繼承樹映射成一張表 428
15.2.2 每個子類映射成一張表 430
15.2.3 每個具體類映射成一張表 431
15.2.4 多態查詢 432
15.3 HQL檢索方式 432
15.3.1 HQL的基本語法 433
15.3.2 實體對象與動態實例化對象查詢 433
15.3.3 條件查詢與別名的使用 434
15.3.4 HQL語句的動態賦值 435
15.3.5 對象導航查詢 435
15.3.6 排序查詢 436
15.3.7 聚合函式 436
15.3.8 分組操作 437
15.3.9 對日期時間的處理 437
15.3.10 聯合查詢 438
15.3.11 子查詢 439
15.4 實戰 440
15.4.1 多對一數據的添加與查詢 440
15.4.2 模糊查詢藥品信息 445
15.4.3 內連線查詢圖書信息 447
15.5 本章小結 450
15.6 實戰練習 450
第16章 JSP+Hibernate實現留言模組 451
視頻講解:72分鐘
16.1 實例說明 452
16.1.1 實現功能 452
16.1.2 系統流程 453
16.1.3 邏輯分層結構 453
16.2 技術要點 454
16.2.1 確定實體及關係 454
16.2.2 ThreadLocal的使用 454
16.3 實現過程 455
16.3.1 搭建開發環境 455
16.3.2 實體類與映射 457
16.3.3 註冊模組 461
16.3.4 用戶登錄 464
16.3.5 實現留言 466
16.3.6 分頁查看留言信息 469
16.3.7 管理員相關操作 475
16.4 運行項目 480
16.5 本章小結 480
第17章 Spring框架 481
視頻講解:106分鐘
17.1 Spring簡介 482
17.2 下載與配置 482
17.2.1 下載 482
17.2.2 配置 483
17.3 Spring IoC 484
17.3.1 控制反轉 484
17.3.2 依賴注入的3種類型 486
17.3.3 接口注入 487
17.3.4 設值注入 487
17.3.5 構造注入 488
17.3.6 選擇合適的注入方式 489
17.4 Spring AOP 489
17.4.1 AOP簡介 489
17.4.2 AOP術語 490
17.4.3 Spring對AOP的支持 490
17.5 Spring Bean工廠 490
17.5.1 BeanFactory簡介 490
17.5.2 裝配一個Bean 491
17.5.3 為Bean命名 491
17.5.4 Bean的賦值標籤 491
17.5.5 自動裝配 496
17.6 Spring的高級套用 496
17.6.1 使用BeanFactory管理Bean 496
17.6.2 使用ApplicationContext管理Bean 497
17.6.3 ApplicationContext訪問資源檔案 497
17.6.4 ApplicationContext輸出國際化信息 498
17.6.5 Web套用中自動載入ApplicationContext 498
17.7 Spring持久化操作 499
17.7.1 JdbcTemplate與Spring數據源 500
17.7.2 在Spring中配置DBCP資料庫連線池 500
17.7.3 Spring整合Hibernate 501
17.8 實戰 504
17.8.1 使用Spring對員工表進行增、刪、改、查操作 504
17.8.2 使用Spring整合Hibernate操作商品庫存表 512
17.9 本章小結 518
17.10 實戰練習 518
第18章 Spring MVC框架 519
視頻講解:82分鐘
18.1 Spring MVC簡介 520
18.1.1 Spring MVC的特點 520
18.1.2 Spring MVC的不足 520
18.2 Spring MVC中的組件 520
18.2.1 核心控制器 521
18.2.2 業務控制器 521
18.2.3 控制器映射 521
18.2.4 模型與視圖 521
18.2.5 視圖解析器 521
18.2.6 Command對象 521
18.3 Spring MVC核心控制器 522
18.4 Spring MVC控制器映射 522
18.4.1 配置BeanNameUrlHandlerMapping 523
18.4.2 配置SimpleUrlHandlerMapping 523
18.4.3 多個控制器映射 524
18.5 Spring MVC業務控制器 524
18.5.1 簡單控制器 524
18.5.2 參數映射控制器 527
18.5.3 檔案名稱映射控制器 527
18.5.4 表單控制器 528
18.5.5 Spring編碼過濾器解決中文亂碼 531
18.5.6 多動作控制器 531
18.6 視圖解析器 534
18.6.1 視圖解析器介紹 534
18.6.2 配置InternalResourceViewResolver 535
18.7 常見的其他第三方MVC框架 535
18.7.1 Struts 536
18.7.2 JSF 536
18.7.3 Struts2 536
18.8 Spring整合Struts 536
18.8.1 通過ActionSupport類整合 536
18.8.2 通過DelegatingRequestProcessor類整合 539
18.8.3 通過DelegatingActionProxy類整合 541
18.9 實戰 542
18.9.1 使用Spring MVC編寫線上通訊錄 542
18.9.2 使用Spring整合Struts編寫多頁面用戶註冊模組 549
18.10 本章小結 553
18.11 實戰練習 553
第19章 Spring+Hibernate實現用戶管理模組 555
視頻講解:72分鐘
19.1 系統功能模組設計 556
19.2 資料庫設計 556
19.3 技術要點 557
19.4 資料夾結構設計 557
19.5 實體映射 558
19.5.1 部門信息 558
19.5.2 用戶信息 559
19.6 設計運算元據庫的接口與類 560
19.6.1 部門信息DAO接口IDeptInfoDao 560
19.6.2 部門信息DAO實現類DeptInfoDao 560
19.6.3 用戶信息DAO接口IUserInfoDao 561
19.6.4 用戶信息DAO實現類IUserInfoDao 561
19.7 登錄子模組 562
19.7.1 登錄子模組控制器 563
19.7.2 登錄子模組JSP頁面 563
19.8 部門管理子模組 566
19.8.1 部門管理子模組控制器 567
19.8.2 部門管理子模組JSP頁面 569
19.9 用戶管理子模組 570
19.9.1 用戶管理子模組檔案上傳類 571
19.9.2 用戶管理子模組控制器類 572
19.9.3 用戶管理子模組JSP頁面 574
19.10 配置檔案 577
19.10.1 在src檔案內編寫log4j.properties 577
19.10.2 創建Spring配置檔案
applicationContext.xml 578
19.10.3 配置web.xml 580
19.11 運行項目 581
19.12 本章小結 581
第4部分 實用技術
第20章 數據分頁 585
視頻講解:65分鐘
20.1 SQL Server資料庫分頁 586
20.1.1 獲取前n條記錄 586
20.1.2 獲取分頁數據 587
20.2 MySQL資料庫分頁 587
20.2.1 LIMIT函式 588
20.2.2 獲取分頁數據 588
20.2.3 獲取總頁數 589
20.3 Hibernate分頁 589
20.3.1 HQL分頁 589
20.3.2 QBC分頁 590
20.4 分頁商品信息查詢模組 590
20.4.1 模組介紹 590
20.4.2 系統流程 591
20.4.3 關鍵技術 591
20.4.4 資料庫設計 592
20.4.5 實現過程 592
20.5 實戰 599
20.6 本章小結 604
20.7 實戰練習 604
第21章 檔案上傳與下載 605
視頻講解:73分鐘
21.1 上傳組件比較 606
21.1.1 jspSmartUpload檔案上傳組件 606
21.1.2 commons-fileUpload檔案上傳組件 606
21.2 commons-fileUpload上傳組件 606
21.3 Struts檔案上傳 609
21.3.1 標籤 609
21.3.2 ActionForm Bean編寫 610
21.3.3 實現檔案上傳 610
21.4 Spring檔案上傳 611
21.4.1 配置檔案上傳解析器 611
21.4.2 編寫檔案上傳表單頁面 611
21.4.3 編寫檔案上傳控制器 612
21.5 檔案下載 613
21.5.1 組件下載 613
21.5.2 輸出流方式下載 615
21.6 MP3樂園 618
21.6.1 模組介紹 618
21.6.2 系統流程 619
21.6.3 關鍵技術 619
21.6.4 資料庫設計 620
21.6.5 公共類編寫 620
21.6.6 實現系統登錄 622
21.6.7 實現用戶註冊 624
21.6.8 實現檔案上傳 626
21.6.9 檔案下載 629
21.7 本章小結 630
21.8 實戰練習 630
第22章 PDF與Excel組件 631
視頻講解:60分鐘
22.1 PDF概述 632
22.1.1 PDF的優點 632
22.1.2 PDF閱讀工具 632
22.2 PDF組件簡介 632
22.2.1 iText組件簡介 632
22.2.2 iText組件的獲取 633
22.2.3 iText組件關鍵類簡介 633
22.3 套用iText組件生成PDF文檔 634
22.3.1 創建Document對象的實例 634
22.3.2 獲取PdfWrite實例 635
22.3.3 為PDF文檔添加內容 635
22.3.4 字型與中文字元的顯示 635
22.3.5 創建表格 636
22.3.6 插入圖像 638
22.4 套用PDFBox組件解析PDF文檔 638
22.4.1 PDFBox組件簡介 639
22.4.2 PDFBox組件的獲取 639
22.4.3 套用PDFBox組件解析PDF文檔 639
22.5 Excel組件簡介 640
22.5.1 常用Excel組件 640
22.5.2 POI組件簡介 640
22.5.3 POI組件的獲取 640
22.5.4 POI組件關鍵類簡介 641
22.6 套用POI組件讀寫Excel文檔 641
22.6.1 創建一個Excel文檔 642
22.6.2 設定字型樣式 642
22.6.3 合併單元格 643
22.6.4 讀取Excel文檔內容 645
22.7 實戰 646
22.7.1 將資料庫中的內容導出為PDF文檔 646
22.7.2 將資料庫中的內容導出為Excel文檔 649
22.8 本章小結 651
22.9 實戰練習 651
第23章 E-mail組件 653
視頻講解:112分鐘
23.1 電子郵件協定簡介 654
23.1.1 SMTP簡單郵件傳輸協定 654
23.1.2 POP3郵局協定 654
23.1.3 IMAP接收郵件協定 654
23.1.4 MIME郵件擴充協定 654
23.2 建立Java Mail開發環境 655
23.2.1 獲取Java Mail API 655
23.2.2 獲取Java Mail API的激活框架 655
23.2.3 安裝和配置郵件伺服器 655
23.3 傳送郵件的API 657
23.3.1 Session類 658
23.3.2 Message類中與傳送郵件相關的方法 659
23.3.3 Address類 661
23.3.4 Authenticator類 662
23.3.5 Transport類 662
23.4 接收郵件的API 664
23.4.1 Store類 664
23.4.2 Folder類 665
23.4.3 Flags類 666
23.4.4 Message類中與接收郵件相關的方法 666
23.5 實戰 667
23.5.1 傳送普通文本郵件 667
23.5.2 傳送HTML格式的郵件 669
23.5.3 傳送帶附屬檔案的郵件 672
23.5.4 接收已讀郵件和未讀郵件 675
23.6 本章小結 684
23.7 實戰練習 684
第24章 動態圖表 685
視頻講解:64分鐘
24.1 JFreeChart簡介 686
24.1.1 認識JFreeChart組件 686
24.1.1 JFreeChart的下載與使用 686
24.2 JFreeChart的核心對象 687
24.2.1 製圖對象 687
24.2.2 製圖工廠對象 688
24.2.3 數據集合對象 688
24.2.4 繪圖區對象 690
24.2.5 坐標軸對象 691
24.2.6 圖片渲染對象 693
24.3 JFreeChart的套用 693
24.3.1 如何獲取圖片 693
24.3.2 創建數據集合與JFreeChart實例 695
24.3.3 圖表相關屬性的設定 696
24.3.4 JFreeChart內置JDBC的使用 698
24.3.5 中文亂碼的解決方案 701
24.4 實戰 702
24.4.1 JFreeChart繪製折線圖 702
24.4.2 JFreeChart繪製區域圖 706
24.4.3 JFreeChart繪製時序圖 708
24.5 本章小結 710
24.6 實戰練習 710
第5部分 項目實戰
第25章 醫藥管理系統 713
視頻講解:168分鐘
25.1 系統分析 714
25.1.1 開發背景 714
25.1.2 需求分析 714
25.2 系統設計 714
25.2.1 系統目標 714
25.2.2 系統功能結構 715
25.2.3 系統流程圖 715
25.3 軟體架構 716
25.3.1 邏輯分層結構設計 716
25.3.2 系統資料夾組織結構 717
25.3.3 實體對象設計 717
25.3.4 定義ActionForm 718
25.3.5 持久層結構設計 718
25.3.6 業務層結構設計 719
25.3.7 頁面結構設計 720
25.4 配置檔案 721
25.4.1 配置web.xml 721
25.4.2 配置struts-config.xml 722
25.4.3 配置hibernate.cfg.xml 725
25.5 實體及映射 726
25.5.1 藥品實體映射 726
25.5.2 藥品類別實體映射 727
25.5.3 銷售明細實體映射 728
25.5.4 用戶實體映射 730
25.6 公共類設計 730
25.6.1 Hibernate過濾器 731
25.6.2 SuperDao類 733
25.6.3 BaseAction類 737
25.6.4 DeleteAction類 740
25.6.5 字元串工具類 741
25.7 國際化 742
25.7.1 國際化資源檔案 743
25.7.2 國際化實現 743
25.8 系統登錄模組設計 744
25.9 藥品類別信息管理 747
25.9.1 藥品類別持久層設計 747
25.9.2 藥品類別的添加 748
25.9.3 分頁查看類別信息 750
25.9.4 類別的修改與刪除 752
25.9.5 藥品類別統計 753
25.10 藥品信息管理 755
25.10.1 藥品對象持久層設計 755
25.10.2 藥品信息的添加與修改 756
25.10.3 分頁查看所有藥品 758
25.10.4 查看藥品詳細信息 759
25.10.5 模糊查詢藥品 760
25.10.6 高級查詢 761
25.10.7 查看庫存 762
25.10.8 藥品批量刪除 763
25.11 購買藥品 765
25.11.1 選購藥品 765
25.11.2 結賬 766
25.12 銷售管理 767
25.12.1 明細信息查詢 768
25.12.2 銷售排行統計 768
25.13 進貨/需求管理 769
25.14 系統管理 770
25.14.1 添加管理員 770
25.14.2 修改密碼 771
25.14.3 系統初始化 772
25.15 運行項目 773
25.16 本章小結 773
第26章 高校學生選課系統 775
視頻講解:120分鐘
26.1 系統分析 776
26.1.1 需求分析 776
26.1.2 可行性分析 776
26.1.3 編寫項目計畫書 777
26.2 系統設計 779
26.2.1 系統功能結構 779
26.2.2 系統編碼規範 780
26.3 項目運行環境 780
26.3.1 伺服器最低配置 780
26.3.2 客戶端最低配置 781
26.4 資料庫與數據表設計 781
26.5 資料夾組織結構 782
26.6 實體映射 782
26.6.1 用戶登錄信息 783
26.6.2 專業信息 784
26.6.3 課程信息 784
26.6.4 學生信息 785
26.6.5 學生與課程關聯信息 786
26.7 設計運算元據庫的接口與實現類 787
26.7.1 用戶登錄信息DAO接口IUserLoginDao 787
26.7.2 用戶登錄信息DAO接口實現類UserLoginDao 787
26.7.3 專業信息DAO接口ISpecialtyDao 789
26.7.4 專業信息DAO接口實現類SpecialtyDao 789
26.7.5 課程信息DAO接口ICourseDao 790
26.7.6 課程信息DAO接口實現類CourseDao 791
26.7.7 學生信息DAO接口IStuUserDao 792
26.7.8 學生信息DAO接口實現類StuUserDao 793
26.8 用戶模組 794
26.8.1 用戶註冊流程 794
26.8.2 用戶註冊控制器類 795
26.8.3 用戶註冊JSP頁面 796
26.8.4 用戶登錄流程 798
26.8.5 用戶登錄控制器類 799
26.8.6 用戶登錄JSP頁面 800
26.8.7 密碼修改流程 800
26.8.8 密碼修改控制器類 801
26.9 管理模組 802
26.9.1 專業管理流程 804
26.9.2 專業管理控制器類 804
26.9.3 專業管理頁面 805
26.9.4 課程管理流程 807
26.9.5 課程管理控制器類 807
26.9.6 課程管理頁面 809
26.9.7 信息統計流程 813
26.9.8 信息統計控制器類 813
26.9.9 信息統計頁面 817
26.9.10 修改密碼 819
26.9.11 退出系統 820
26.10 學生模組 821
26.10.1 學生模組控制器類 821
26.10.2 學生基本信息頁面 824
26.10.3 選擇新課程頁面 824
26.10.4 查詢已選課程頁面 825
26.10.5 課程詳細信息頁面 826
26.10.6 修改登錄密碼頁面 827
26.11 配置檔案 828
26.11.1 配置web.xml檔案 828
26.11.2 配置struts-config.xml檔案 829
26.11.3 配置applicationContext.xml檔案 831
26.12 運行項目 834
26.13 本章小結 834