書籍信息
作者:孫衛琴
定價:79.50元
出版社:電子工業出版社
頁碼:734 頁
![Tomcat與JavaWeb開發技術詳解](/img/b/883/wZwpmL1ADN4UDMxgjM3QTN1UTM1QDN5MjM5ADMwAjMwUzL4IzLzgzLt92YucmbvRWdo5Cd0FmLwE2LvoDc0RHa.jpg)
出版日期:2009年
ISBN:9787121072970
版本:2版
裝幀:平裝
開本:16
叢書名:專業人士權威經典
附帶品描述:附CD-ROM光碟一張
內容簡介
《Tomcat與Java Web開發技術詳解》 結合最新的Tomcat 6版本,詳細介紹了開發Java Web套用的各種技術。主要內容包括:Tomcat和Java Web開發的基礎知識、Java Web開發的高級技術、在Java Web套用中運用第三方提供的實用軟體(如Struts、Velocity和Log4J)的方法,以及Tomcat的各種高級功能。
書中內容注重理論與實踐相結合,列舉了大量具有典型性和實用價值的Web套用實例,並提供了詳細的開發和部署步驟。由於Java Web技術是SUN公司在Java Servlet規範中提出的通用技術,因此《Tomcat與Java Web開發技術詳解》講解的Java Web套用例子可以運行在任何一個實現了SUN的Servlet規範的Java Web伺服器上。隨書附贈光碟的內容為《Tomcat與Java Web開發技術詳解》範例的源程式,以及《Tomcat與Java Web開發技術詳解》涉及的部分軟體的安裝程式。
《Tomcat與Java Web開發技術詳解》語言深入淺出、通俗易懂,無論對於Java Web開發的新手還是行家來說,《Tomcat與Java Web開發技術詳解》都是精通Tomcat和開發Java Web套用的必備的實用手冊。《Tomcat與Java Web開發技術詳解》還可作為高校相關專業學生學習Java Web開發的參考書,以及企業Java Web培訓教材,也可作為SUN公司的SCWCD(SUN Certified Web Component Developer)認證的輔導教材。
作者簡介
孫衛琴,1975年出生,籍貫江蘇常州,1997年畢業於上海交通大學,隨後主要從事基於Java的軟體開發工作,在此其間還從事過Java方面的培訓諮詢工作。2002年開始Java技術領域的創作。代表著作有:《Tomcat與Java Web開發技術詳解(第2版)》2008《Java網路編程精解》2007《Java面向對象編程》2006《精通Hibernate:Java對象持久化技術詳解》2005《精通Struts:基於MVC的Java Web設計與開發》2004《Tomcat與Java Web開發技術詳解》2004《Java 2認證考試指南與試題解析》2002。
媒體推薦
孫老師的每一本Java著作都在廣大Java愛好者中引起搶購熱潮,此次推出的新著一定也不例外。
此書既通俗易懂又具有足夠的深度和廣度,對想要利用Java進行Web開發的同行來說是一不可多得的參考書和工具書。
陳鋒
Java中文站(JAVA-CN.COM)站長
本書由淺入深、通俗易懂地講解了開發JavaWeb套用涉及的各種技術。如果您要選擇用於學習Java Web開發的書籍,個人認為非此書莫屬。
魏旭東
東南融通公司架構設計師
本書對Tomcat技術講得全面,有深度,很實用,是您在Tomcat平台上開發Java Web的必備之書。
施登榮
北京清華同方軟體股份有限公司研發經理
如果你正在為找不到一本適合自己的Web開發書籍而苦惱,那么這本書正是你需要的。
彭雪
紅帽中國研發中心.JBoss團隊研發工程師
編輯推薦
蘊含Java Web開發的核心思想
闡釋Java Web開發的前沿技術和實用技巧
詳述Tomcat高級配置方法
面向對象的編程思想貫穿《Tomcat與Java Web開發技術詳解》
穿插UML經典設計模式
精心設計的習題鞏固所學知識
介紹Java Web開發的基礎知識。包括Web運作原理,Java Web套用的結構,Servlet的基本用法,JSP的基本用法,訪問資料庫,使用HTTP會話,訪問JavaBean,EL語言。
介紹Java Web開發的高級技術。包括Servlet的高級用法,各種監聽器的用法,開發JavaMail Web套用,創建自定義JSP標籤,JSTL標籤庫的用法,創建國際化的Web套用,簡單標籤和標籤檔案的用法,過濾器的用法,創建和訪問EJB組件,創建、發布和訪問Web服務,運用MVC設計模式。
介紹TOmcat的基礎知識。包括TOmcat伺服器的作用、結構和安裝步驟,配置虛擬主機。
介紹Tomcat的高級功能。包括持久性會話管理,控制和管理平台,安全域,與其他HTTP伺服器集成,集群,配置SSI,Tomcat閥,配置SSL,創建嵌入式Tomcat。
介紹第三方提供的相關實用軟體的用法,如Struts、AXIS、Loq4J、Velocitv和ANT。 通過3個典型的Web套用範例貫穿《Tomcat與Java Web開發技術詳解》。這些範例綜合運用了Java Web開發的各種技術,有助於提高讀者的實踐能力。
讀者對象:
《Tomcat與Java Web開發技術詳解》適合廣大Java Web開發人員參考學習,同時也可作為高等院校相關專業師生的教學參考書或教材。
目錄
第1篇 Java Web開發技術詳解
依據SUN的Java Servlet規範和JSP規範,深入介紹了開發Java Web套用的各種技術。
第1章 Web運作原理探析 3
利用Java套接字(Socket)實現了一個簡單的基於HTTP協定的客戶程式和伺服器程式。
1.1 Web的概念 3
1.2 HTML簡介 4
1.3 URL簡介 7
1.4 HTTP協定簡介 7
1.4.1 HTTP請求格式 9
1.4.2 HTTP回響格式 11
1.4.3 正文部分的MIME類型 13
1.5 用Java套接字創建HTTP客戶與伺服器程式 14
1.5.1 演示異構系統之間用HTTP協定通信 17
1.5.2 演示對網頁中的超級連結的處理過程 19
1.5.3 演示對網頁中的圖片的處理過程 20
1.6 Web發展歷程 21
1.6.1 發布靜態HTML文檔 21
1.6.2 發布靜態多媒體信息 22
1.6.3 提供瀏覽器端與用戶的動態互動功能 22
1.6.4 提供伺服器端與用戶的動態互動功能 24
1.6.5 發布Web套用 29
1.6.6 發布Web服務 30
1.6.7 Web 2.0:全民共建的Web 32
1.7 處理HTTP請求參數及HTML表單 33
1.8 客戶端向伺服器端上傳檔案 36
1.9 小結 41
1.10 思考題 42
第2章 Tomcat簡介 45
Tomcat除了能夠充當運行Servlet的容器,還提供了作為Web伺服器的一些實用功能,如Tomcat管理和控制平台、安全域管理和Tomcat閥等。Tomcat已成為目前開發企業JavaWeb套用的最佳Servlet容器選擇之一。
2.1 Tomcat概述 46
2.2 Tomcat作為Servlet容器的基本功能 47
2.3 Tomcat的組成結構 48
2.4 Tomcat的工作模式 50
2.5 Tomcat的版本 52
2.6 安裝和配置Tomcat所需的資源 53
2.7 安裝Tomcat 55
2.8 啟動Tomcat並測試Tomcat的安裝 57
2.9 Tomcat的運行腳本 58
2.10 小結 59
2.11 思考題 60
第3章 第一個JavaWeb套用 63
以一個簡單的helloapp套用為例,讓初學者迅速獲得開發JavaWeb套用的實際經驗。
3.1 JavaWeb套用簡介 63
3.2 創建JavaWeb套用 64
3.2.1 JavaWeb套用的目錄結構 64
3.2.2 創建HTML檔案 65
3.2.3 創建Servlet類 66
3.2.4 創建JSP檔案 67
3.2.5 創建web.xml檔案 68
3.3 在Tomcat中發布JavaWeb套用 70
3.3.1 Tomcat的目錄結構 70
3.3.2 按照默認方式發布JavaWeb套用 71
3.3.3 Web組件的URL 72
3.3.4 配置Tomcat的元素 75
3.3.5 配置Tomcat的虛擬主機 78
3.4 創建、配置和使用自定義JSP標籤 80
3.5 用批處理檔案或ANT編譯範例 84
3.6 小結 85
3.7 思考題 86
第4章 Servlet技術(上) 89
要想精通Servlet編程,不僅要了解Servlet自身的用法,還要了解容器為它提供的十八般武器的用法。
4.1 Servlet API 90
4.1.1 Servlet接口 90
4.1.2 GenericServlet抽象類 91
4.1.3 HttpServlet抽象類 93
4.1.4 ServletRequest接口 96
4.1.5 HttpServletRequest接口 97
4.1.6 ServletResponse接口 100
4.1.7 HttpServletResponse接口 101
4.1.8 ServletConfig接口 104
4.1.9 ServletContext接口 105
4.2 JavaWeb套用的生命周期 108
4.2.1 啟動階段 108
4.2.2 運行時階段 109
4.2.3 終止階段 109
4.2.4 用Tomcat的管理平台管理Web套用的生命周期 109
4.3 Servlet的生命周期 111
4.3.1 初始化階段 111
4.3.2 運行時階段 112
4.3.3 銷毀階段 112
4.3.4 演示Servlet的生命周期的範例 113
4.4 ServletContext與Web套用範圍 115
4.4.1 在Web套用範圍記憶體放共享數據的範例 116
4.4.2 使用ServletContextListener監聽器 119
4.5 Servlet的服務方法拋出異常 121
4.6 防止頁面被客戶端快取 122
4.7 小結 123
4.8 思考題 124
第5章 Servlet技術(下) 129
進一步介紹Servlet的一些高級用法。
5.1 下載檔案 129
5.2 上傳檔案 130
5.3 動態生成圖像 136
5.4 讀寫Cookie 139
5.5 訪問Web套用的工作目錄 145
5.6 轉發和包含 147
5.6.1 請求轉發 148
5.6.2 包含 152
5.6.3 請求範圍 154
5.7 重定向 155
5.8 訪問Servlet容器內的其他Web套用 158
5.9 避免並發問題 160
5.9.1 合理決定在Servlet中定義的變數的作用域類型 162
5.9.2 使用Java同步機制對多執行緒同步 164
5.9.3 被廢棄的SingleThreadModel接口 165
5.10 小結 166
5.11 思考題 169
第6章 JSP技術 171
包括JSP的運行機制和語法、JSP包含其他Web組件的方法、把請求轉發給其他Web組件的方法,以及JSP的異常處理。
6.1 比較HTML、Servlet和JSP 171
6.1.1 靜態HTML檔案 171
6.1.2 用Servlet動態生成HTML頁面 171
6.1.3 用JSP動態生成HTML頁面 173
6.2 JSP語法 177
6.2.1 JSP指令(Directive) 178
6.2.2 JSP聲明 180
6.2.3 Java程式片段(Scriptlet) 181
6.2.4 Java表達式 182
6.2.5 隱含對象 184
6.3 JSP的生命周期 185
6.4 請求轉發 188
6.5 包含 190
6.5.1 靜態包含 190
6.5.2 動態包含 192
6.5.3 混合使用靜態包含和動態包含 194
6.6 JSP異常處理 200
6.7 再談發布JSP 202
6.8 預編譯JSP 203
6.9 PageContext抽象類 204
6.10 JSP技術的發展趨勢 206
6.11 小結 207
6.12 思考題 207
第7章 bookstore套用簡介 211
介紹bookstore套用的軟體結構、各個JSP網頁的功能,以及部分Web組件的實現。
7.1 bookstore套用的軟體結構 211
7.1.1 Web伺服器層 211
7.1.2 資料庫層 212
7.2 瀏覽bookstore套用的JSP網頁 212
7.3 JavaBean和實用類 217
7.3.1 實體類 218
7.3.2 購物車的實現 219
7.4 發布bookstore套用 222
7.5 小結 223
第8章 訪問資料庫 225
介紹通過JDBC API訪問資料庫、在Tomcat中配置數據源,以及在Web套用中通過數據源連線資料庫的方法。
8.1 安裝和配置MySQL資料庫 225
8.2 JDBC簡介 228
8.2.1 java.sql包中的接口和類 230
8.2.2 編寫訪問資料庫程式的步驟 234
8.2.3 事務處理 236
8.3 通過JDBC API訪問資料庫的JSP範例程式 237
8.4 bookstore套用通過JDBC API訪問資料庫 239
8.5 數據源(DataSource)簡介 243
8.6 配置數據源 244
8.6.1 在context.xml中加入元素 244
8.6.2 在web.xml中加入元素 245
8.7 程式中訪問數據源 246
8.7.1 通過數據源連線資料庫的JSP範例程式 246
8.7.2 bookstore套用通過數據源連線資料庫 248
8.8 處理中文編碼 251
8.9 分頁顯示批量數據 252
8.10 小結 256
8.11 思考題 257
第9章 HTTP會話的使用與管理 259
介紹如何通過會話來實現伺服器對客戶的狀態的跟蹤。
9.1 會話簡介 259
9.2 HttpSession的生命周期及會話範圍 263
9.3 使用會話的JSP範例程式 265
9.4 使用會話的Servlet範例程式 269
9.5 通過重寫URL來跟蹤會話 273
9.6 會話的持久化 277
9.6.1 標準會話管理器StandardManager 279
9.6.2 持久化會話管理器PersistentManager 280
9.7 會話的監聽 284
9.7.1 用HttpSessionListener統計線上用戶人數 289
9.7.2 用HttpSessionBindingListener統計線上用戶人數 291
9.8 小結 294
9.9 思考題 295
第10章 JSP訪問JavaBean 299
介紹JavaBean的概念和創建方法, JSP訪問JavaBean的語法,JavaBean在Web套用中的4種存在範圍,如何在bookstore套用中運用JavaBean。
10.1 JavaBean簡介 299
10.2 JSP訪問JavaBean的語法 300
10.3 JavaBean的範圍 302
10.3.1 JavaBean在頁面(page)範圍內 302
10.3.2 JavaBean在請求(request)範圍內 305
10.3.3 JavaBean在會話(session)範圍內 306
10.3.4 JavaBean在Web套用(application)範圍內 307
10.4 在bookstore套用中訪問JavaBean 308
10.4.1 訪問BookDB類 308
10.4.2 訪問ShoppingCart類 309
10.5 小結 313
10.6 思考題 314
第11章 開發JavaMail Web套用 317
介紹了一個JavaMail Web套用,通過它,客戶可以訪問郵件伺服器上的郵件賬號、收發郵件和管理郵件夾。
11.1 E-mail協定簡介 317
11.1.1 SMTP簡單郵件傳輸協定 317
11.1.2 POP3郵局協定 318
11.1.3 接收郵件的新協定IMAP 318
11.2 JavaMail API簡介 319
11.3 建立JavaMail應用程式的開發環境 321
11.3.1 獲得JavaMail API的類庫 321
11.3.2 安裝和配置郵件伺服器 321
11.4 創建JavaMail應用程式 324
11.5 JavaMail Web套用簡介 328
11.6 JavaMail Web套用的程式結構 328
11.6.1 重新封裝Message數據 329
11.6.2 用於保存郵件賬號信息的JavaBean 332
11.6.3 定義所有JSP檔案的相同內容 334
11.6.4 登錄IMAP伺服器上的郵件賬號 336
11.6.5 管理郵件夾 339
11.6.6 查看郵件夾中的郵件信息 342
11.6.7 查看郵件內容 345
11.6.8 創建和傳送郵件 346
11.6.9 退出郵件系統 348
11.7 在Tomcat中配置郵件會話(Mail Session) 349
11.7.1 在context.xml中配置Mail Session資源 349
11.7.2 在web.xml中加入對JNDI Mail Session資源的引用 350
11.7.3 在javamail套用中獲取JNDI Mail Session資源 350
11.8 發布和運行javamail套用 352
11.9 小結 352
11.10 思考題 353
第12章 EL表達式語言 355
EL(Expression Language)表達式語言是在JSP 2.0版本中引入的新特性,它用於JSP檔案中的數據訪問。
12.1 基本語法 355
12.1.1 訪問對象的屬性及數組的元素 356
12.1.2 EL運算符 356
12.1.3 隱含對象 357
12.1.4 命名變數 359
12.2 使用EL表達式的JSP範例 360
12.2.1 關於基本語法的例子 360
12.2.2 讀取HTML表單數據的例子 362
12.2.3 訪問命名變數的例子 363
12.3 定義和使用EL函式 363
12.4 小結 366
12.5 思考題 367
第13章 自定義JSP標籤 369
結合具體的範例,進一步介紹自定義標籤的創建過程,以及它在JSP檔案中的使用方法。
13.1 自定義JSP標籤簡介 369
13.2 JSP Tag API 370
13.2.1 JspTag接口 370
13.2.2 Tag接口 371
13.2.3 IterationTag接口 373
13.2.4 BodyTag接口 374
13.2.5 TagSupport類和BodyTagSupport類 376
13.3 創建和使用message標籤(訪問標籤屬性) 380
13.3.1 創建message標籤的處理類MessageTag 382
13.3.2 創建標籤庫描述檔案 385
13.3.3 在Web套用中使用標籤 388
13.3.4 發布支持中、英文版本的helloapp套用 390
13.4 創建和使用iterate標籤(重複執行標籤主體) 391
13.5 創建和使用greet標籤(訪問標籤主體內容) 395
13.6 小結 399
13.7 思考題 400
第14章 採用模板設計網上書店套用 403
以bookstore套用為例,介紹如何通過自定義JSP標籤來為網站設計模板,從而使所有在客戶端展示的網頁都通過模板來生成。
14.1 如何設計網站的模板 403
14.2 創建負責流程控制的Servlet 404
14.3 創建模板標籤和模板JSP檔案 406
14.3.1 標籤和其處理類 408
14.3.2 標籤和處理類 411
14.3.3 標籤和處理類 413
14.3.4 標籤和處理類 417
14.4 修改JSP檔案 419
14.5 發布採用模板設計的bookstore套用 420
14.6 小結 423
第15章 JSTL Core標籤庫 425
本章對JSTL做了概要介紹,並且著重介紹了JSTL中的Core標籤庫的用法。
15.1 使用第三方提供的標籤庫的步驟 425
15.2 JSTL標籤庫簡介 426
15.3 一般用途的標籤 427
15.3.1 標籤 427
15.3.2 標籤 428
15.3.3 標籤 430
15.3.4 標籤 430
15.4 條件標籤 431
15.4.1 標籤 431
15.4.2 、和標籤 432
15.5 疊代標籤 433
15.5.1 標籤 433
15.5.2 標籤 437
15.6 URL相關的標籤 437
15.6.1 標籤 437
15.6.2 標籤 438
15.6.3 標籤 440
15.7 小結 440
15.8 思考題 441
第16章 JSTL I18N標籤庫 443
I18N標籤庫主要用於編寫國際化的Web套用,本章對I18N標籤庫進行了詳細介紹。
16.1 國際化的概念 443
16.2 Java對I18N的支持 444
16.2.1 Locale類 444
16.2.2 ResourceBundle類 448
16.2.3 MessageFormat類和複合訊息 449
16.3 國際化標籤 452
16.3.1 標籤 452
16.3.2 標籤 453
16.3.3 標籤 453
16.3.4 標籤 454
16.3.5 標籤 455
16.3.6 標籤 455
16.4 創建國際化的Web套用 456
16.4.1 創建支持國際化的網頁 456
16.4.2 創建資源檔案 459
16.5 格式化標籤 460
16.5.1 標籤 460
16.5.2 標籤 461
16.5.3 標籤 461
16.5.4 標籤 462
16.5.5 標籤 463
16.5.6 標籤 465
16.6 小結 465
16.7 思考題 466
第17章 JSTL SQL標籤庫 469
在JSP中直接通過Java程式代碼來訪問資料庫,會降低JSP頁面的可讀性和可維護性,為了解決這一問題,可以在JSP中通過JSTL SQL標籤庫中的標籤來訪問資料庫。
17.1 標籤 469
17.2 標籤 470
17.2.1 設定數據源 470
17.2.2 設定select查詢語句 470
17.2.3 控制實際取出的記錄 471
17.2.4 訪問查詢結果 471
17.2.5 使用標籤的範例 472
17.3 標籤 474
17.4 標籤 475
17.5 標籤 475
17.6 標籤 476
17.7 小結 478
17.8 思考題 478
第18章 JSTL Functions標籤庫 481
介紹Functions標籤庫中常用的16個函式的用法。
18.1 fn:contains函式 481
18.2 fn:containsIgnoreCase函式 481
18.3 fn:startsWith函式 482
18.4 fn:endsWith函式 482
18.5 fn:indexOf函式 482
18.6 fn:replace函式 483
18.7 fn:substring函式 483
18.8 fn:substringBefore函式 483
18.9 fn:substringAfter函式 484
18.10 fn:split函式 484
18.11 fn:join函式 485
18.12 fn:toLowerCase函式 485
18.13 fn:toUpperCase函式 485
18.14 fn:trim函式 486
18.15 fn:escapeXml函式 486
18.16 fn:length函式 487
18.17 小結 488
18.18 思考題 489
第19章 簡單標籤和標籤檔案 491
為了簡化開發標籤的過程,JSP 2.0引入了一種新的標籤擴展機制,稱為“簡單標籤擴展”。
19.1 實現SimpleTag接口 491
19.1.1 創建和使用簡單標籤 493
19.1.2 創建和使用帶屬性和標籤主體的簡單標籤 494
19.1.3 創建和使用帶動態屬性的簡單標籤 495
19.2 使用標籤檔案 497
19.2.1 標籤檔案的隱含對象 500
19.2.2 標籤檔案的指令 501
19.2.3 標籤檔案的和動作元素 503
19.2.4 創建和使用帶屬性和標籤主體的display標籤檔案 503
19.2.5 創建和使用帶屬性和標籤主體的welcome標籤檔案 505
19.2.6 創建和使用帶變數的precode標籤檔案 506
19.3 小結 507
19.4 思考題 507
第20章 過濾器 509
如果在多個Web組件中編寫完成同樣操作的程式代碼,顯然會導致重複編碼,從而降低開發效率和軟體的可維護性,為了解決上述問題,過濾器應運而生。
20.1 過濾器簡介 509
20.2 創建過濾器 510
20.3 發布過濾器 513
20.4 串聯過濾器 518
20.4.1 包裝設計模式簡介 519
20.4.2 ServletOutputStream的包裝類 521
20.4.3 HttpServletResponse的包裝類 524
20.4.4 創建對回響結果進行字元串替換的過濾器 525
20.4.5 ReplaceTextFilter過濾器工作的UML時序圖 527
20.4.6 發布和運行包含ReplaceTextFilter過濾器的Web套用 528
20.5 小結 531
20.6 思考題 532
第21章 在Web套用中訪問EJB組件 535
首先介紹JavaEE的體系結構;然後以bookstore套用為例,介紹開發EJB組件的過程;最後講解如何在JBoss伺服器上發布JavaEE套用。
21.1 JavaEE體系結構簡介 535
21.2 安裝和配置JBoss伺服器 537
21.3 創建EJB組件 538
21.3.1 編寫Remote接口 539
21.3.2 編寫Home接口 539
21.3.3 編寫Enterprise Java Bean
類 540
21.4 在Web套用中訪問EJB組件 543
21.5 發布JavaEE套用 544
21.5.1 在JBoss上發布EJB組件 545
21.5.2 在JBoss上發布Web套用 547
21.5.3 在JBoss上發布JavaEE套用 549
21.6 小結 550
21.7 思考題 551
第22章 在Web套用中訪問Web服務 553
介紹利用AXIS來創建SOAP服務和SOAP客戶程式的方法,還介紹了在bookstore套用中訪問SOAP服務的方法。
22.1 SOAP簡介 553
22.2 建立Apache AXIS環境 555
22.3 在Tomcat上發布
Apache-AXIS Web套用 556
22.4 創建SOAP服務 557
22.4.1 創建提供SOAP服務的Java類 557
22.4.2 創建SOAP服務的發布描述符檔案 557
22.5 管理SOAP服務 558
22.5.1 發布SOAP服務 558
22.5.2 刪除SOAP服務 559
22.6 創建和運行SOAP客戶程式 560
22.7 發布JWS服務 563
22.8 在bookstore套用中訪問SOAP服務 563
22.8.1 創建BookDB服務類及
BookDBDelegate代理類 564
22.8.2 發布bookdbservice服務和bookstore套用 573
22.9 小結 574
22.10 思考題 575
第23章 Web套用的MVC設計模式 577
首先介紹了MVC設計模式的結構和優點;接著介紹了SUN公司提出的在Java Web開發領域的兩種設計模式:JSP Model1和JSP Molde2;然後介紹了Struts實現MVC的機制;最後以helloapp套用為例,簡要介紹了在Web套用中使用Struts 2.0的方法。
23.1 MVC設計模式簡介 577
23.2 JSP Model 1和
JSP Model 2 579
23.3 Struts概述 581
23.3.1 Struts實現MVC的機制 581
23.3.2 Struts的工作流程 582
23.4 創建採用Struts的Web套用 583
23.4.1 建立Struts的環境 583
23.4.2 創建視圖 584
23.4.3 創建模型 585
23.4.4 創建Action類 585
23.4.5 創建web.xml檔案和struts.xml檔案 586
23.5 運行helloapp套用 587
23.5.1 伺服器端裝載login.htm的流程 587
23.5.2 用戶驗證的流程 587
23.6 小結 589
23.7 思考題 589
第2篇 Tomcat配置及第三方實用軟體的用法
介紹Tomcat伺服器的基本配置和高級配置,從而為Java Web套用創建高效的運行環境;介紹在Java Web套用中運用第三方提供的實用軟體(如Velocity和Log4J)的方法。
第24章 Tomcat的控制平台和管理平台 593
Tomcat提供了基於Web方式的管理平台和控制平台,用戶通過瀏覽器,就可以很方便地配置Tomcat伺服器,還可以管理運行在Tomcat伺服器上的Web套用,如發布、啟動、停止或刪除Web套用,以及查看Web套用狀態。
24.1 訪問Tomcat的控制平台和管理平台 593
24.2 Tomcat的控制平台 595
24.2.1 Tomcat控制平台的功能 595
24.2.2 配置元素 597
24.3 Tomcat的管理平台 598
24.4 小結 600
第25章 安全域 601
主要介紹如何通過Tomcat提供的安全域來保護Web套用的資源。
25.1 安全域概述 601
25.2 為Web資源設定安全約束 602
25.2.1 在web.xml中加入元素 603
25.2.2 在web.xml中加入元素 605
25.2.3 在web.xml中加入元素 608
25.3 記憶體域 608
25.4 JDBC域 610
25.4.1 用戶資料庫的結構 610
25.4.2 在MySQL中創建和配置用戶資料庫 611
25.4.3 配置元素 611
25.5 DataSource域 612
25.6 在Web套用中訪問用戶信息 614
25.7 小結 614
25.8 思考題 615
第26章 Tomcat與其他HTTP 伺服器集成 617
首先討論Tomcat與HTTP伺服器集成的一般原理,然後介紹Tomcat與Apache伺服器及IIS集成的詳細步驟,最後介紹把由多個Tomcat伺服器構成的集群系統與Apache伺服器集成的方法。
26.1 Tomcat與HTTP伺服器集成的原理 617
26.1.1 JK外掛程式 618
26.1.2 AJP協定 618
26.2 在Windows下Tomcat與
Apache伺服器集成 618
26.3 在Linux下Tomcat與Apache
伺服器集成 621
26.4 Tomcat與IIS伺服器集成 623
26.4.1 準備相關檔案 624
26.4.2 編輯註冊表 624
26.4.3 在IIS中加入“jakarta”虛擬目錄 626
26.4.4 把JK外掛程式作為ISAPI篩選器加入到IIS中 627
26.4.5 測試配置 628
26.5 Tomcat集群 628
26.5.1 配置集群系統的負載平衡器 629
26.5.2 配置集群管理器 631
26.6 小結 635
26.7 思考題 636
第27章 在Tomcat中配置SSI 637
首先介紹了SSI的概念及SSI指令的用法,然後介紹了在Tomcat中配置SSI的方法。
27.1 SSI簡介 637
27.1.1 #echo指令 638
27.1.2 #include指令 640
27.1.3 #flastmod指令 641
27.1.4 #fsize指令 641
27.1.5 #exec指令 641
27.1.6 #config指令 641
27.1.7 #if、#elif、#else和#endif指令 643
27.2 在Tomcat中配置對SSI的支持 643
27.3 小結 645
27.4 思考題 645
第28章 Tomcat閥 647
介紹Tomcat閥的種類,還將詳細介紹各種Tomcat閥的功能和使用方法。
28.1 Tomcat閥簡介 647
28.2 客戶訪問日誌閥 648
28.3 遠程地址過濾器 650
28.4 遠程主機過濾器 651
28.5 客戶請求記錄器 652
28.6 小結 653
28.7 思考題 653
第29章 在Tomcat中配置SSL 655
SSL(Server Socket Layer)協定,旨在達到在開放網路(Internet)上安全、保密地傳輸信息的目的,這種協定在Web上獲得了廣泛的套用。
29.1 SSL簡介 655
29.1.1 加密通信 656
29.1.2 安全證書 656
29.1.3 SSL握手 657
29.2 在Tomcat中使用SSL 658
29.2.1 準備安全證書 658
29.2.2 配置SSL連線器 659
29.2.3 訪問支持SSL的Web站點 660
29.3 小結 661
29.4 思考題 662
第30章 用ANT工具管理Web套用 663
介紹了ANT的安裝和配置,並以bookstore套用為例,介紹了ANT的使用方法。
30.1 安裝配置ANT 663
30.2 創建build.xml檔案 663
30.3 運行ANT 668
30.4 小結 669
30.5 思考題 669
第31章 使用Log4J進行日誌操作 671
首先介紹Log4J的組成,接著介紹如何在程式中使用Log4J,最後介紹如何在Web套用中通過Log4J生成日誌。
31.1 Log4J簡介 671
31.1.1 Logger組件 672
31.1.2 Appender組件 673
31.1.3 Layout組件 673
31.1.4 Logger組件的繼承性 674
31.2 Log4J的基本使用方法 675
31.2.1 定義配置檔案 675
31.2.2 在程式中使用Log4J 677
31.3 在helloapp套用中使用Log4J 680
31.3.1 創建用於配置Log4J環境的Servlet 680
31.3.2 在login.jsp中輸出日誌 681
31.3.3 發布和運行使用Log4J的helloapp套用 681
31.4 小結 683
31.5 思考題 683
第32章 Velocity模板語言 685
首先通過一個簡單的Velocity例子來講解創建基於Velocity的Web套用的步驟,然後詳細介紹Velocity模板語言的各個要素。
32.1 安裝Velocity 685
32.2 Velocity的簡單例子 685
32.2.1 創建Velocity模板 685
32.2.2 創建擴展VelocityServlet的Servlet類 686
32.2.3 發布和運行基於Velocity的Web套用 688
32.3 注釋 689
32.4 引用 689
32.4.1 變數引用 689
32.4.2 屬性引用 690
32.4.3 方法引用 692
32.4.4 正式引用符 693
32.4.5 安靜引用符 693
32.4.6 轉義符 694
32.4.7 大小寫替換 694
32.5 指令 695
32.5.1 #set指令 695
32.5.2 字面字元串 696
32.5.3 #if指令 697
32.5.4 比較運算 697
32.5.5 #foreach循環指令 698
32.5.6 #include指令 700
32.5.7 #parse指令 700
32.5.8 #macro指令 701
32.5.9 轉義VTL指令 702
32.5.10 VTL的格式 702
32.6 其他特徵 703
32.6.1 數學運算 703
32.6.2 範圍操作符 703
32.6.3 字元串的連線 704
32.7 小結 705
32.8 思考題 705
第33章 創建嵌入式Tomcat伺服器 707
介紹如何把Tomcat嵌入到Java應用程式中,以及在程式中配置Tomcat的組件,並控制Tomcat伺服器的啟動和關閉。
33.1 將Tomcat嵌入到Java套用中 707
33.2 創建嵌入了Tomcat的
Java示範程式 708
33.3 運行嵌入式Tomcat
伺服器 711
33.4 小結 713
附錄A server.xml檔案 715
對server.xml檔案的一些常用的元素進行了介紹。
A.1 配置Server元素 716
A.2 配置Service元素 717
A.3 配置Engine元素 717
A.4 配置Host元素 718
A.5 配置Context元素 718
A.6 配置Connector元素 719
附錄B web.xml檔案 721
介紹了Web套用的配置檔案web.xml檔案。
B.1 配置過濾器 723
B.2 配置Servlet 724
B.3 配置Servlet映射 725
B.4 配置Session 725
B.5 配置Welcome檔案清單 725
B.6 配置Tag Library 726
B.7 配置資源引用 726
B.8 配置安全約束 727
B.9 配置安全驗證登錄界面 727
B.10 配置對安全驗證角色的引用 728
附錄C XML簡介 729
XML,即可擴展標記語言(Extensible Markup Language),是一種可以用來創建自定義標記的標記語言。
C.1 SGML、HTML 與XML的比較 729
C.2 DTD文檔類型定義 730
C.3 有效XML文檔以及簡化格式的XML文檔 731
C.4 XML中的常用術語 732
C.4.1 URL、URN和URI 733
C.4.2 XML命名空間 733
附錄D 書中涉及軟體獲取途徑 735
為了便於讀者在本地機器上搭建運行範例的環境,列出了書中涉及的軟體的獲取途徑。
……
序言
授業的方式——專心研究圖書寫作體例 在2007年飛思召開的一次Java技術研討會上,孫衛琴老師更是將她以圖書為載體傳道、授業、解惑的心得與在座的許多技術專家進行了分享。她提到:“書不是用來炫耀作者掌握的技術,而是用來向讀者傳授技術的。”正是基於這樣的思想,她潛心研究什麼樣的表達方式是最容易讓讀者理解和掌握的。對於一個概念的解釋,是用圖表對比式,還是問題啟發式,抑或範例說明式,她不斷去實踐,直到得到滿意的結果。
對於讀者來講,通篇只有文字沒有圖表的內容,確實讓人望而生畏。書要讀起來有趣、易懂,才會讓人有興趣深入去學習,所以要善於總結、分析歸納知識點,並以恰當的方式來體現,看似簡單的道理,實現起來並不容易,在《Tomcat與Java Web開發技術詳解(第2版)》中,共有33個知識點、430張圖表、14個典型的Web套用範例,其中傾注了孫衛琴老師8個多月來廢寢忘食的創作心血。解惑的途徑——圖書出版+網路服務 孫衛琴老師用她專業、專注和專心的態度看待自己的圖書創作,同時還專門開發網站為購書的讀者提供技術諮詢服務和論壇討論平台,甚至有的書還專門開發了配套下載的視頻講座資料,給讀者提供圖書以外的增值服務。
我想,這些書能創造非常好的銷售業績,與孫老師堅持為師者傳道授業解惑的心態不無關係,成功並不是偶然,而是必然。
而作為策劃出版方,我們與孫老師緊密溝通,策劃第2版圖書的時間並不短,從策劃到最後產品正式出版,也有一年半的時間。第2版的圖書與第l版相比增加了許多最新的技術,同時在版式設計、編輯加工等方面,也注意從讀者的易讀性角度出發,在與孫老師共同對書稿進行多次反覆的校正之後,《Tomcat與Java Web開發技術詳解(第2版)》終於正式出爐。這中間包含了許多人的奉獻與追求,這種奉獻是美麗的,這種追求是執著的。
衷心希望孫衛琴老師的這本書,能夠引領更多讀者輕鬆進入Tomcat與Java Web的開發殿堂。
書摘
第1篇 Java Web開發技術詳解
第1章 Web運作原理探析
所有上過網的人都熟悉這樣的過程:用戶在客戶機上運行瀏覽器程式,在瀏覽器中輸入一個URL地址,這個地址指向的網頁就會從遠程Web伺服器傳送到客戶機,並且由客戶機上的瀏覽器獎其展示出來。本章從Web的概念入手,逐步向讀者展示Web的本質及動作原理,讀者不妨帶著以下問題去閱讀本章開頭的內容:
·在整個Web體系中,瀏覽器和Web伺服器的各自功能是什麼?
·瀏覽器和Web伺服器採用HTTP協定進行通信,該協定規定了通信的哪些具體細節?
……