tomcatjavaweb開發
1. Tomcat與javaWeb開發技術詳解的目錄
第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
為了便於讀者在本地機器上搭建運行範例的環境,列出了書中涉及的軟體的獲取途徑。
……
2. 用java開發web項目,如果用於互聯網,還是用tomcat部署嗎
當然可以使用tomcat部署,但是需要考慮訪問量的問題,如果訪問量不大巧陪,那麼一個tomcat就可以滾肢了,不要小瞧tomcat的孝備蠢負載能力,用過一個tomcat支撐過一個縣級市所有醫院系統的訪問,但是具體的訪問量當時也沒有統計,如果訪問量挺大,或者說峰值比較大,可以考慮tomcat集群,用apache+tomcat的方式做集群難度比較小,畢竟這是免費而且最容易實現的方式了。
3. java 開發,web不用Tomcat不行嗎
除非只是java項目,如果是web應用,,如果是web,前台jSP
本身是基於
Servlet
的技術,像
Spring,
Struts,
JSF
都是基於
Servlet
的,tomcat對java來說是一個servlet處理器。
4. 如何搭建java web開發環境
先安裝JDK,雹褲要配置環境變數。安裝完JDK後配置環境變數 計算機→屬性→高級系統設置→高級→環境變數。
JDK下載地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
系統變數→新建 JAVA_HOME 變數 。變數值填寫jdk的安裝目錄(本人是 C:\Program Files\Java\jdk1.8.0_121)。
系統變數→新建Path變數,輸入 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; 。如果Path變數里已經存在並有內容了,那麼就在最後加一個分號再把上面那個東西輸進去。
新建 CLASSPATH 變數。變數值填寫 .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar (注意最前面有一點)
首先得有開發工具,比如說Eclipse(免費開源),MyEclipse(付費,功能更強大),IntelliJ IDEA(有免費版,很好用,有代碼提示)。對於初學者,Eclipse足夠了。
Eclipse下載地址:襪胡http://www.eclipse.org/downloads/packages/eclipse-ide-java-ee-developers/neon3
還要有虛擬伺服器,比如Tomcat,推薦下7.0。Tomcat默認埠8080,可修改。
配置Tomcat伺服器環境變數:右擊「我的電腦」--選擇「屬性」--選擇「高級」--點擊「環境變數」在「系統變數(S)」中
1,新建變數名:CATALINA_BASE,變數值:Tomcat安裝目錄
2,新建變數名:CATALINA_HOME,變數值:Tomcat安裝目錄
3,打開PATH,添加變數值:%CATALINA_HOME%\lib;%CATALINA_HOME%\bin
搭建Tomcat環境教程:打開Tomcat目錄下的conf/server.xml,在其中<Host></Host>元素中添加<Context path="伺服器內路徑" docBase="你的網站的路徑"/>。網站路徑都明白,伺服器路徑就比如是path="/MyWeb",那麼要訪問這個網站就是在瀏覽器輸入http://localhost:8080/MyWeb,後面那個源好簡/MyWeb就是伺服器內路徑。
Tomcat下載地址:http://tomcat.apache.org/download-80.cgi
然後說在Eclipse中啟動Tomcat伺服器,在Eclipse工作台視圖中選擇伺服器視圖,然後對空白處右擊,選擇New/Server命令,選擇Tomcat v7 Server,點"Next",然後在"Tomcat installation direction"中選擇Tomcat安裝路徑,點"Next",最後一個頁面勾選"Always use this server when running this project"。
配置完成!
打字很累,求採納!
5. java web tomcat 相關
可能的原因有:
引入的JAR包比較多,
項目配弊如置文件比較復雜激擾,
而且是系統的表也多,從頁映租鉛啟射關系多
或者還可能會有寫的靜態多法多。
啟動時要載入的資料比較多。
應該是個S2SH的項目。
6. Tomcat與JavaWeb開發技術詳解的作者簡介
孫衛琴,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。
7. Java Web開發Tomcat中三種部署項目的方法
第一種方法 在tomcat中的conf目錄中 在server xml中的 <host/>節點中添加
<Context path= /hello docBase= D:eclipse debug= privileged= true >
</Context>
至於Context 節點屬性 可詳細見相關文檔
第二種方法 將web項目文件件拷貝到webapps 目錄中
第三種方法 很靈活 在conf目錄中 新建 Catalina(注意大小寫)\localhost目錄 在該目錄中新建一個含喊xml文件 名字可以隨意取 只要和當前文件中的文件名不重復就行了 該xml文件的內容為
<Context path= /hello docBase= D:eclipse debug= privileged= true >
</Context>
第 個方法有個優點 可以定義別名 伺服器端運行的項目名稱為path 外部訪問的URL則使用XML的文件名 這個方法很方便的隱藏了項目的名稱 對一些項目名稱被固定不能更換 但外部訪問時又想換個路徑 非常有效
第 還有優點 可以定義一些個性配置 如數據源的配置等
還有一篇詳細的
直接放到Webapps目錄下
Tomcat的Webapps目錄是Tomcat默認的應用目錄 當伺服器啟動時 會載入所有這個目錄下的應用 也可以將JSP程序打包成一個war包放在目錄下 伺服器會自動解開這個war包 並在這個目錄下生成一個同名的文件夾 一個war包就是有特性格式的jar包 它是將一個Web程序的所有內容進行壓縮得到 具體如何打包 可以使用許多開發工具的IDE環境 如Eclipse NetBeans ant JBuilder等 也可以用cmd 命令 jar cvf applicationname war package *
甚至可以在程序執行中打包
try{
string strjavahome = system getproperty( java home )
strjavahome = strjavahome substring( strjavahome lastindexof(\))+ \bin\ ;
runtime getruntime() exec( cmd /c start +strjavahome+ jar cvf hello war c:\tomcat \webapps\root\* )
}
catch(exception e){system out println(e) }
webapps這個默認的應用目錄也是可以改變 打開Tomcat的conf目錄下的server xml文件 找到下面內容
<Host name= localhost debug= appBase= webapps unpackWARs= true autoDeloy= true xmlValidation= falase xmlNamespaceAware= false >
在server xml中指定
在Tomcat的配置文件中 一個Web應用就是一個特定的派基Context 可以通過在server xml中新建Context里部署一個JSP應用程序 打開server xml文件 在Host標簽內建一個Context 內容如下
<Context path= /myapp reloadable= true docBase= D:myapp workDir= D:myappwork />
其中path是虛擬路徑 docBase是JSP應用程序的物理路徑 workDir是這個應用的工作目錄 存放運行是生成的於這個應用相關的文件
創建一談羨野個Context文件
以上兩種方法 Web應用被伺服器載入後都會在Tomcat的confcatalinalocalhost目錄下生成一個XML文件 其內容如下
<Context path= /admin docBase= ${catalina home}/server/webapps/admin debug= privileged= true ></Context>
可以看出 文件中描述一個應用程序的Context信息 其內容和server xml中的Context信息格式是一致的 文件名便是虛擬目錄名 您可以直接建立這樣的一個xml文件 放在Tomcat的confcatalinalocalhost目錄下 例子如下
注意 刪除一個Web應用同時也要刪除webapps下相應的文件夾禍server xml中相應的Context 還要將Tomcat的conf
catalinalocalhost目錄下相應的xml文件刪除 否則Tomcat仍會岸配置去載入……
tomcat部署web應用主要有以下幾種方式
)拷貝你的WAR文件或者你的web應用文件夾(包括該web的所有內容)到$CATALINA_BASE/webapps目錄下
)為你的web服務建立一個只包括context內容的XML片斷文件 並把該文件放到$CATALINA_BASE/webapps目錄下 這個web應用本身可以存儲在硬碟上的任何地方 這種context片斷提供了一種便利的方法來部署web應用 你不需要編輯server xml 除非你想改變預設的部署特性 安裝一個新的web應用時不需要重啟動Tomcat
)同方法 只是將context片斷放在CATALINA_BASEconfCatalinalocalhost目錄下 這種方法比方法 >要有效 筆者經過多次實驗發現方法 不如後面這種方法好用 前者多次出現系統打不開的情況
)直接在server xml中</Host>前加上Context片斷 使用這種方法時 tomcat會自動在CATALINA_BASEconfCatalinalocalhost目錄下生成一個文件片斷 方法同方法 具有同樣效果 這種方式需要將ROOT目錄刪除才行
另外 為了讓tomcat只運行conf/server xml中指定的web應用 可以有以下幾種辦法
實現一
)將要部署的WEB應用放在webapps以外的路徑 並在server xml相應的context中的docBase指定
)刪除webapps中的所有文件夾 以及conf/catalina/localhost下所有xml文件
注 webapps是server xml中的Host元素的appBase屬性的值
實現二
)修改server xml中Host元素的屬性 添加或修改 deployXML= false deployOnStartup= false autoDeploy= false
)含義
lishixin/Article/program/Java/ky/201311/28718
8. tomcat是什麼軟體 和JAVA有什麼關系呢
tomcat是伺服器,是一種比較簡單的中間件,用來把java web開發部署到tomcat中,此時tomcat是作為伺服器的。
java的可移植性設計讓java依賴class文件運行的。jdk就是java運行的環境,使用它能編譯.java文件,運行java程序。
tomcat可以比作web容器,java應用發布棚宴在它上面然後通過它與瀏覽器進行交互,一鏈做銀種程序與瀏覽器適配的容器。
擴展資料:
Tomcat 伺服器是一個免費的開放源代碼的Web 應用胡薯伺服器,屬於輕量級應用伺服器,在中小型系統和並發訪問用戶不是很多的場合下被普遍使用,是開發和調試JSP 程序的首選。
當配置正確時,Apache 為HTML頁面服務,而Tomcat 實際上運行JSP 頁面和Servlet。另外,Tomcat和IIS等Web伺服器一樣,具有處理HTML頁面的功能,另外它還是一個Servlet和JSP容器,獨立的Servlet容器是Tomcat的默認模式。
9. Tomcat與JavaWeb開發技術詳解的內容簡介
《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)認證的輔導教材。
10. tomcat如何創建JavaWeb
如果是本地運行,應該直接點擊idea的運行。
如果要伺服器部署,有沒有使用maven用來管理項目?