關(guān)于我們
書(shū)單推薦
新書(shū)推薦
|
Tomcat與Java Web開(kāi)發(fā)技術(shù)詳解(第3版)(含DVD光盤(pán)1張) 讀者對(duì)象:Java初學(xué)者。
本書(shū)結(jié)合最新的Tomcat 9版本,詳細(xì)介紹了開(kāi)發(fā)Java Web應(yīng)用的各種技術(shù)。主要內(nèi)容包括:Tomcat和Java Web開(kāi)發(fā)的基礎(chǔ)知識(shí),Java Web開(kāi)發(fā)的高級(jí)技術(shù),在Java Web應(yīng)用中運(yùn)用第三方提供的實(shí)用軟件(如Spring、Velocity和Log4J)的方法,以及Tomcat的各種高級(jí)功能。書(shū)中內(nèi)容注重理論與實(shí)踐相結(jié)合,列舉了大量具有典型性和實(shí)用價(jià)值的Web應(yīng)用實(shí)例,并提供了詳細(xì)的開(kāi)發(fā)和部署步驟。由于Java Web技術(shù)是Oracle公司在Java Servlet規(guī)范中提出的通用技術(shù),因此本書(shū)講解的Java Web應(yīng)用例子可以運(yùn)行在任何一個(gè)實(shí)現(xiàn)Oracle的Servlet規(guī)范的Java Web服務(wù)器上。隨書(shū)附贈(zèng)光盤(pán)內(nèi)容為本書(shū)所有范例源程序,視頻教程,以及本書(shū)涉及的部分軟件的最新版本的安裝程序。本書(shū)語(yǔ)言深入淺出,通俗易懂。無(wú)論對(duì)于Java Web開(kāi)發(fā)的新手還是行家來(lái)說(shuō),本書(shū)都是精通Tomcat和開(kāi)發(fā)Java Web應(yīng)用的必備的實(shí)用手冊(cè)。本書(shū)還可作為高校的學(xué)習(xí)Java Web開(kāi)發(fā)的教材,以及企業(yè)Java Web培訓(xùn)教材。
孫衛(wèi)琴是中國(guó)知名IT 作家和Java 專(zhuān)家,畢業(yè)于上海交通大學(xué),隨后主要從事基于Java 的軟件開(kāi)發(fā)工作,在此期間還從事Java 方面的培訓(xùn)和咨詢工作。2002 年開(kāi)始Java 技術(shù)領(lǐng)域的創(chuàng)作,文風(fēng)清晰嚴(yán)謹(jǐn)、深入淺出,深受讀者歡迎,其多部作品的銷(xiāo)量在同類(lèi)書(shū)籍中一度位居全國(guó)榜首。
第1篇
Java Web開(kāi)發(fā)技術(shù)詳解 第1 章 Web 運(yùn)作原理探析.......................1 1.1 Web 的概念.............................................2 1.2 HTML簡(jiǎn)介.............................................3 1.3 URL簡(jiǎn)介................................................5 1.4 HTTP 簡(jiǎn)介..............................................6 1.4.1 HTTP 請(qǐng)求格式..........................8 1.4.2 HTTP 響應(yīng)的格式....................10 1.4.3 正文部分的MIME類(lèi)型...........12 1.4.4 HTTP 各個(gè)版本的特點(diǎn).............12 1.5 用Java 套接字創(chuàng)建HTTP 客戶與服務(wù)器 程序.......................................................14 1.5.1 演示異構(gòu)系統(tǒng)之間用HTTP 協(xié)議 通信..............................................18 1.5.2 演示對(duì)網(wǎng)頁(yè)中超鏈接的處理過(guò)程 ......................................................21 1.5.3 演示對(duì)網(wǎng)頁(yè)中圖片的處理過(guò)程22 1.6 Web 的發(fā)展歷程...................................22 1.6.1 發(fā)布靜態(tài)HTML文檔..............23 1.6.2 發(fā)布靜態(tài)多媒體信息................23 1.6.3 提供瀏覽器端與用戶的動(dòng)態(tài)交互 功能..............................................24 1.6.4 提供服務(wù)器端與用戶的動(dòng)態(tài)交互 功能..............................................25 1.6.5 發(fā)布Web應(yīng)用..........................30 1.6.6 發(fā)布Web服務(wù)..........................31 1.6.7 Web2.0:全民共建的Web.......34 1.6.8 Web3.0:智能化處理海量信息35 1.7 處理HTTP 請(qǐng)求參數(shù)以及HTML表單35 1.8 客戶端向服務(wù)器端上傳文件................38 1.9 小結(jié).......................................................44 1.10 思考題.................................................44 第2章 Tomcat簡(jiǎn)介................................49 2.1 Tomcat 概述...........................................50 2.2 Tomcat 作為Servlet 容器的基本功能..51 2.3 Tomcat 的組成結(jié)構(gòu)...............................52 2.4 Tomcat 的工作模式...............................55 2.5 Tomcat 的版本.......................................57 2.6 安裝和配置Tomcat 所需的資源..........59 2.7 安裝Tomcat...........................................60 2.8 啟動(dòng)Tomcat 并測(cè)試Tomcat 的安裝....61 2.9 Tomcat 的運(yùn)行腳本...............................63 2.10 小結(jié).....................................................64 2.11 思考題.................................................64 第3章 第一個(gè)JavaWeb應(yīng)用.................67 3.1 JavaWeb 應(yīng)用簡(jiǎn)介................................67 3.2 創(chuàng)建JavaWeb 應(yīng)用...............................68 3.2.1 JavaWeb 應(yīng)用的目錄結(jié)構(gòu)........68 3.2.2 創(chuàng)建HTML文件......................70 3.2.3 創(chuàng)建Servlet 類(lèi)..........................70 3.2.4 創(chuàng)建JSP 文件...........................72 3.2.5 創(chuàng)建web.xml 文件....................72 3.3 在Tomcat 中發(fā)布JavaWeb應(yīng)用74 3.3.1 Tomcat 的目錄結(jié)構(gòu)..................74 3.3.2 按照默認(rèn)方式發(fā)布JavaWeb 應(yīng)用 .....................................................75 3.3.3 Web組件的URL......................76 3.3.4 配置Tomcat 的<Context>元素.80 3.3.5 配置Tomcat 的虛擬主機(jī)..........82 3.4 創(chuàng)建、配置和使用自定義JSP 標(biāo)簽....85 3.5 用批處理文件或ANT編譯范例..........89 3.6 小結(jié).......................................................90 3.7 思考題...................................................91 第4章 Servlet技術(shù)(上).....................93 4.1 Servlet API.............................................94 4.1.1 Servlet接口...............................95 4.1.2 GenericServlet 抽象類(lèi)...............96 4.1.3 HttpServlet 抽象類(lèi)....................98 4.1.4 ServletRequest接口................101 4.1.5 HttpServletRequest接口.........102 4.1.6 ServletResponse 接口..............104 4.1.7 HttpServletResponse接口.......106 4.1.8 ServletConfig 接口..................108 4.1.9 ServletContext 接口................110 4.2 JavaWeb 應(yīng)用的生命周期.................. 113 4.2.1 啟動(dòng)階段.................................113 4.2.2 運(yùn)行時(shí)階段.............................113 4.2.3 終止階段.................................114 4.2.4 用Tomcat 的管理平臺(tái)管理Web 應(yīng)用的生命周期........................114 4.3 Servlet 的生命周期............................. 116 4.3.1 初始化階段.............................116 4.3.2 運(yùn)行時(shí)階段.............................117 4.3.3 銷(xiāo)毀階段.................................117 4.3.4 演示Servlet 的生命周期的范例 ....................................................118 4.4 ServletContext 與Web 應(yīng)用范圍........121 4.4.1 在Web 應(yīng)用范圍內(nèi)存放共享數(shù)據(jù) 的范例........................................122 4.4.2 使用ServletContextListener 監(jiān)聽(tīng) 器................................................124 4.5 Servlet 的服務(wù)方法拋出異常..............127 4.6 防止頁(yè)面被客戶端緩存......................128 4.7 使用Annotation 標(biāo)注配置Servlet......129 4.8 處理HTTP 請(qǐng)求參數(shù)中的中文字符編碼 .............................................................131 4.9 小結(jié).....................................................133 4.10 思考題...............................................135 第5章 Servlet技術(shù)(下).....................139 5.1 下載文件.............................................139 5.2 上傳文件.............................................141 5.2.1 利用Apache開(kāi)源類(lèi)庫(kù)實(shí)現(xiàn)文件上 傳................................................142 5.2.2 利用Servlet API中的Part 接口實(shí) 現(xiàn)文件上傳................................146 5.3 動(dòng)態(tài)生成圖像.....................................149 5.4 讀寫(xiě)Cookie.........................................152 5.5 訪問(wèn)Web 應(yīng)用的工作目錄.................159 5.6 轉(zhuǎn)發(fā)和包含.........................................161 5.6.1 請(qǐng)求轉(zhuǎn)發(fā).................................162 5.6.2 包含.........................................166 5.6.3 請(qǐng)求范圍.................................168 5.7 重定向.................................................168 5.8 訪問(wèn)Servlet 容器內(nèi)的其他Web 應(yīng)用172 5.9 避免并發(fā)問(wèn)題.....................................173 5.9.1 合理決定在Servlet中定義的變量 的作用域類(lèi)型............................176 5.9.2 使用Java 同步機(jī)制對(duì)多線程同步 ...................................................178 5.9.3 被廢棄的SingleThreadModel接口 ...................................................179 5.10 對(duì)客戶請(qǐng)求的異步處理....................181 5.10.1 異步處理的流程...................181 5.10.2 異步處理的范例...................182 5.10.3 異步監(jiān)聽(tīng)器...........................186 5.10.4 非阻塞I/O.............................187 5.11 服務(wù)器端推送....................................191 5.12 小結(jié)...................................................193 5.13 思考題...............................................196 第6章 JSP 技術(shù)....................................199 6.1 比較HTML、Servlet 和JSP..............199 6.1.1 靜態(tài)HTML文件....................199 6.1.2 用Servlet 動(dòng)態(tài)生成HTML 頁(yè)面 ....................................................200 6.1.3 用JSP 動(dòng)態(tài)生成HTML頁(yè)面201 6.2 JSP 語(yǔ)法..............................................205 6.2.1 JSP 指令(Directive)............206 6.2.2 JSP 聲明..................................208 6.2.3 Java程序片段(Scriptlet)....209 6.2.4 Java表達(dá)式.............................210 6.2.5 隱含對(duì)象.................................212 6.3 JSP 的生命周期...................................214 6.4 請(qǐng)求轉(zhuǎn)發(fā).............................................216 6.5 包含.....................................................218 6.5.1 靜態(tài)包含.................................218 6.5.2 動(dòng)態(tài)包含.................................220 6.5.3 混合使用靜態(tài)包含和動(dòng)態(tài)包含 ....................................................222 6.6 JSP 異常處理.......................................229 6.7 再談發(fā)布JSP.......................................232 6.8 預(yù)編譯JSP ..........................................232 6.9 PageContext 類(lèi)的用法........................234 6.10 在web.xml 中配置JSP.....................236 6.11 JSP 技術(shù)的發(fā)展趨勢(shì).........................237 6.12 小結(jié)...................................................238 6.13 思考題...............................................238 第7章 bookstore 應(yīng)用簡(jiǎn)介..................243 7.1 bookstore 應(yīng)用的軟件結(jié)構(gòu).................243 7.1.1 Web服務(wù)器層.........................244 7.1.2 數(shù)據(jù)庫(kù)層.................................244 7.2 瀏覽bookstore 應(yīng)用的JSP 網(wǎng)頁(yè)........244 7.3 JavaBean 和實(shí)用類(lèi).............................248 7.3.1 實(shí)體類(lèi).....................................248 7.3.2 購(gòu)物車(chē)的實(shí)現(xiàn).........................249 7.4 發(fā)布bookstore 應(yīng)用............................252 7.5 小結(jié).....................................................253 第8章 訪問(wèn)數(shù)據(jù)庫(kù)...............................255 8.1 安裝和配置MySQL數(shù)據(jù)庫(kù)...............255 8.2 JDBC 簡(jiǎn)介...........................................257 8.2.1 java.sql包中的接口和類(lèi)........260 8.2.2 編寫(xiě)訪問(wèn)數(shù)據(jù)庫(kù)程序的步驟..263 8.2.3 事務(wù)處理.................................266 8.3 通過(guò)JDBC API訪問(wèn)數(shù)據(jù)庫(kù)的JSP范例程 序.........................................................267 8.4 bookstore 應(yīng)用通過(guò)JDBC API 訪問(wèn)數(shù)據(jù) 庫(kù).........................................................269 8.5 數(shù)據(jù)源(DataSource)簡(jiǎn)介...............274 8.6 配置數(shù)據(jù)源.........................................276 8.6.1 在context.xml 中加入<Resource> 元素............................................276 8.6.2 在web.xml 中加入<resource-ref> 元素............................................277 8.7 程序中訪問(wèn)數(shù)據(jù)源..............................277 8.7.1 通過(guò)數(shù)據(jù)源連接數(shù)據(jù)庫(kù)的JSP 范 例程序........................................278 8.7.2 bookstore 應(yīng)用通過(guò)數(shù)據(jù)源連接數(shù) 據(jù)庫(kù)............................................279 8.8 處理數(shù)據(jù)庫(kù)中數(shù)據(jù)的中文字符編碼..282 8.9 分頁(yè)顯示批量數(shù)據(jù)..............................283 8.10 用可滾動(dòng)結(jié)果集分頁(yè)顯示批量數(shù)據(jù)287 8.11 小結(jié)...................................................290 8.11 思考題...............................................291 第9章 HTTP 會(huì)話的使用與管理........295 9.1 會(huì)話簡(jiǎn)介.............................................295 9.2 HttpSession 的生命周期及會(huì)話范圍..299 9.3 使用會(huì)話的JSP 范例程序..................301 9.4 使用會(huì)話的Servlet 范例程序............305 9.5 通過(guò)重寫(xiě)URL來(lái)跟蹤會(huì)話................308 9.6 會(huì)話的持久化......................................312 9.6.1 標(biāo)準(zhǔn)會(huì)話管理器StandardManager ....................................................315 9.6.2 持久化會(huì)話管理器 PersistentManager ......................315 9.7 會(huì)話的監(jiān)聽(tīng).........................................320 9.7.1 用HttpSessionListener 統(tǒng)計(jì)在線 用戶人數(shù)....................................324 9.7.2 用HttpSessionBindingListener 統(tǒng) 計(jì)在線用戶人數(shù)........................326 9.8 小結(jié).....................................................330 9.9 思考題.................................................331 第10章 JSP 訪問(wèn)JavaBean..................335 10.1 JavaBean 簡(jiǎn)介...................................335 10.2 JSP 訪問(wèn)JavaBean 的語(yǔ)法...............336 10.3 JavaBean 的范圍...............................338 10.3.1 JavaBean 在頁(yè)面(page)范圍內(nèi) ....................................................339 10.3.2 JavaBean 在請(qǐng)求(request)范圍 內(nèi)................................................341 10.3.3 JavaBean 在會(huì)話(session)范圍 內(nèi)................................................343 10.3.4 JavaBean 在Web 應(yīng)用 (application)范圍內(nèi)..............344 10.4 在bookstore 應(yīng)用中訪問(wèn)JavaBean..345 10.4.1 訪問(wèn)BookDB 類(lèi)...................345 10.4.2 訪問(wèn)ShoppingCart 類(lèi)...........346 10.5 小結(jié)...................................................350 10.6 思考題...............................................351 第11章 開(kāi)發(fā)JavaMail Web應(yīng)用.........355 11.1 E-mail 協(xié)議簡(jiǎn)介................................355 11.1.1 SMTP 簡(jiǎn)單郵件傳輸協(xié)議....356 11.1.2 POP3郵局協(xié)議.....................356 11.1.3 接收郵件的新協(xié)議IMAP.....356 11.2 JavaMail API 簡(jiǎn)介.............................357 11.3 建立JavaMail 應(yīng)用程序的開(kāi)發(fā)環(huán)境359 11.3.1 獲得JavaMail API的類(lèi)庫(kù)....360 11.3.2 安裝和配置郵件服務(wù)器........360 11.4 創(chuàng)建JavaMail 應(yīng)用程序...................362 11.5 JavaMail Web 應(yīng)用簡(jiǎn)介....................366 11.6 JavaMail Web 應(yīng)用的程序結(jié)構(gòu)........367 11.6.1 重新封裝Message數(shù)據(jù)........368 11.6.2 用于保存郵件賬號(hào)信息的 JavaBean ....................................371 11.6.3 定義所有JSP 文件的相同內(nèi)容 ...................................................373 11.6.4 登錄IMAP服務(wù)器上的郵件賬號(hào) ...................................................375 11.6.5 管理郵件夾...........................377 11.6.6 查看郵件夾中的郵件信息....380 11.6.7 查看郵件內(nèi)容.......................384 11.6.8 創(chuàng)建和發(fā)送郵件....................385 11.6.9 退出郵件系統(tǒng).......................388 11.7 在Tomcat 中配置郵件會(huì)話(Mail Session).............................................388 11.7.1 在context.xml 中配置Mail Session 資源...............................388 11.7.2 在web.xml 中加入對(duì)JNDI Mail Session 資源的引用...................389 11.7.3 在javamail 應(yīng)用中獲取JNDI Mail Session 資源......................389 11.8 發(fā)布和運(yùn)行javamail 應(yīng)用................391 11.9 小結(jié)...................................................392 11.10 思考題..............................................392 第12章 EL表達(dá)式語(yǔ)言.......................395 12.1 基本語(yǔ)法...........................................395 12.1.1 訪問(wèn)對(duì)象的屬性及數(shù)組的元素 ...................................................396 12.1.2 EL運(yùn)算符.............................396 12.1.3 隱含對(duì)象...............................398 12.1.4 命名變量...............................399 12.2 使用EL表達(dá)式的JSP 范例.............400 12.2.1 關(guān)于基本語(yǔ)法的例子............400 12.2.2 讀取HTML表單數(shù)據(jù)的例子402 12.2.3 訪問(wèn)命名變量的例子............403 12.3 定義和使用EL函數(shù).........................403 12.4 小結(jié)...................................................406 12.5 思考題...............................................407 第13章 自定義JSP 標(biāo)簽.....................409 13.1 自定義JSP 標(biāo)簽簡(jiǎn)介........................409 13.2 JSP Tag API........................................410 13.2.1 JspTag接口...........................411 13.2.2 Tag接口................................411 13.2.3 IterationTag 接口...................413 13.2.4 BodyTag接口........................414 13.2.5 TagSupport類(lèi)和BodyTagSupport 類(lèi)................................................416 13.3 message 標(biāo)簽范例(訪問(wèn)標(biāo)簽屬性) .............................................................420 13.3.1 創(chuàng)建message 標(biāo)簽的處理類(lèi) MessageTag................................421 13.3.2 創(chuàng)建標(biāo)簽庫(kù)描述文件............425 13.3.3 在Web應(yīng)用中使用標(biāo)簽......427 13.3.4 發(fā)布支持中、英文版本的 helloapp 應(yīng)用.............................429 13.4 iterate 標(biāo)簽范例(重復(fù)執(zhí)行標(biāo)簽主體) .............................................................431 13.5 greet 標(biāo)簽范例(訪問(wèn)標(biāo)簽主體內(nèi)容) .............................................................435 13.6 小結(jié)...................................................439 13.7 思考題...............................................440 第14章 采用模板設(shè)計(jì)網(wǎng)上書(shū)店 應(yīng)用443 14.1 如何設(shè)計(jì)網(wǎng)站的模板........................443 14.2 創(chuàng)建負(fù)責(zé)流程控制的Servlet............444 14.3 創(chuàng)建模板標(biāo)簽和模板JSP 文件........446 14.3.1 <parameter>標(biāo)簽和其處理類(lèi)448 14.3.2 <screen>標(biāo)簽和處理類(lèi).........451 14.3.3 <definition>標(biāo)簽和處理類(lèi)....453 14.3.4 <insert>標(biāo)簽和處理類(lèi)..........457 14.4 修改JSP 文件....................................459 14.5 發(fā)布采用模板設(shè)計(jì)的bookstore 應(yīng)用 .............................................................460 14.6 小結(jié)...................................................463 第15章 JSTL Core 標(biāo)簽庫(kù)...................465 15.1 使用第三方提供的標(biāo)簽庫(kù)的步驟....465 15.2 JSTL標(biāo)簽庫(kù)簡(jiǎn)介..............................466 15.3 一般用途的標(biāo)簽................................467 15.3.1 <c:out>標(biāo)簽...........................468 15.3.2 <c:set>標(biāo)簽...........................469 15.3.3 <c:remove>標(biāo)簽....................470 15.3.4 <c:catch>標(biāo)簽........................471 15.4 條件標(biāo)簽...........................................471 15.4.1 <c:if>標(biāo)簽.............................471 15.4.2 <c:choose> 、<c:when> 和 <c:otherwise>標(biāo)簽.....................472 15.5 迭代標(biāo)簽...........................................473 15.5.1 <c:forEach>標(biāo)簽...................473 15.5.2 <c:forTokens>標(biāo)簽................477 15.6 URL相關(guān)的標(biāo)簽...............................478 15.6.1 <c:import>標(biāo)簽.....................478 15.6.2 <c:url>標(biāo)簽...........................479 15.6.3 <c:redirect>標(biāo)簽....................480 15.7 小結(jié)...................................................481 15.8 思考題...............................................481 第16章 JSTL I18N 標(biāo)簽庫(kù)..................485 16.1 國(guó)際化的概念....................................485 16.2 Java語(yǔ)言對(duì)I18N 的支持.................486 16.2.1 Locale類(lèi)...............................486 16.2.2 ResourceBundle類(lèi)................490 16.2.3 MessageFormat 類(lèi)和復(fù)合消息 ....................................................492 16.3 國(guó)際化標(biāo)簽........................................494 16.3.1 <fmt:setLocale>標(biāo)簽.............494 16.3.2 <fmt:setBundle>標(biāo)簽............495 16.3.3 <fmt:bundle>標(biāo)簽.................496 16.3.4 <fmt:message>標(biāo)簽...............496 16.3.5 <fmt:param>標(biāo)簽..................497 16.3.6 <fmt:requestEncoding>標(biāo)簽..498 16.4 創(chuàng)建國(guó)際化的Web 應(yīng)用...................498 16.4.1 創(chuàng)建支持國(guó)際化的網(wǎng)頁(yè)........499 16.4.2 創(chuàng)建資源文件.......................502 16.5 格式化標(biāo)簽........................................503 16.5.1 <fmt:setTimeZone>標(biāo)簽.......503 16.5.2 <fmt:timeZone>標(biāo)簽.............503 16.5.3 <fmt:formatNumber>標(biāo)簽.....504 16.5.4 <fmt:parseNumber>標(biāo)簽.......505 16.5.5 <fmt:formatDate>標(biāo)簽..........506 16.5.6 <fmt:parseDate>標(biāo)簽............507 16.6 小結(jié)...................................................508 16.7 思考題...............................................509 第17章 JSTL Sql標(biāo)簽庫(kù).....................513 17.1 <sql:setDataSource>標(biāo)簽..................513 17.2 <sql:query>標(biāo)簽................................514 17.2.1 設(shè)置數(shù)據(jù)源...........................514 17.2.2 設(shè)置select 查詢語(yǔ)句............515 17.2.3 控制實(shí)際取出的記錄............515 17.2.4 訪問(wèn)查詢結(jié)果.......................515 17.2.5 使用<sql:query>標(biāo)簽的范例516 17.3 <sql:param>標(biāo)簽...............................519 17.4 <sql:dateParam>標(biāo)簽.........................519 17.5 <sql:update>標(biāo)簽...............................520 17.6 <sql:transaction>標(biāo)簽........................521 17.7 小結(jié)...................................................522 17.8 思考題...............................................523 第18章 JSTL Functions標(biāo)簽庫(kù)...........525 18.1 fn:contains 函數(shù).................................525 18.2 fn:containsIgnoreCase 函數(shù)...............525 18.3 fn:startsWith 函數(shù)..............................526 18.4 fn:endsWith 函數(shù)...............................526 18.5 fn:indexOf函數(shù).................................526 18.6 fn:replace 函數(shù)...................................527 18.7 fn:substring函數(shù)...............................527 18.8 fn:substringBefore 函數(shù).....................528 18.9 fn:substringAfter 函數(shù).......................528 18.10 fn:split 函數(shù).....................................528 18.11 fn:join 函數(shù)......................................529 18.12 fn:toLowerCase 函數(shù).......................529 18.13 fn:toUpperCase 函數(shù).......................530 18.14 fn:trim函數(shù).....................................530 18.15 fn:escapeXml 函數(shù)..........................530 18.16 fn:length 函數(shù)..................................531 18.17 小結(jié).................................................532 18.18 思考題.............................................533 第19章 簡(jiǎn)單標(biāo)簽和標(biāo)簽文件.............535 19.1 實(shí)現(xiàn)SimpleTag 接口........................535 19.1.1 創(chuàng)建和使用<hello>簡(jiǎn)單標(biāo)簽537 19.1.2 創(chuàng)建和使用帶屬性和標(biāo)簽主體 的<welcome>簡(jiǎn)單標(biāo)簽.............538 19.1.3 創(chuàng)建和使用帶動(dòng)態(tài)屬性的 <max>簡(jiǎn)單標(biāo)簽........................540 19.2 使用標(biāo)簽文件....................................541 19.2.1 標(biāo)簽文件的隱含對(duì)象...........545 19.2.2 標(biāo)簽文件的指令...................546 19.2.3 標(biāo)簽文件的<jsp:invoke> 和 <jsp:doBody>動(dòng)作元素.............547 19.2.4 創(chuàng)建和使用帶屬性和標(biāo)簽主體 的display標(biāo)簽文件..................548 19.2.5 創(chuàng)建和使用帶屬性和標(biāo)簽主體 的welcome標(biāo)簽文件................549 19.2.6 創(chuàng)建和使用帶變量的precode 標(biāo) 簽文件........................................551 19.3 小結(jié)...................................................552 19.4 思考題...............................................552 第20章 過(guò)濾器.....................................555 20.1 過(guò)濾器簡(jiǎn)介........................................555 20.2 創(chuàng)建過(guò)濾器........................................556 20.3 發(fā)布過(guò)濾器........................................560 20.3.1 在web.xml 文件中配置過(guò)濾器 ....................................................560 20.3.2 用@WebFilter 標(biāo)注來(lái)配置過(guò)濾 器................................................561 20.3.3 用NoteFilter 來(lái)過(guò)濾NoteServlet 的范例........................................562 20.4 串聯(lián)過(guò)濾器........................................566 20.4.1 包裝設(shè)計(jì)模式簡(jiǎn)介...............567 20.4.2 ServletOutputStream 的包裝類(lèi) ....................................................569 20.4.3 HttpServletResponse 的包裝類(lèi) ....................................................572 20.4.4 創(chuàng)建對(duì)響應(yīng)結(jié)果進(jìn)行字符串替 換的過(guò)濾器................................573 20.4.5 ReplaceTextFilter 過(guò)濾器工作的 UML時(shí)序圖..............................574 20.4.6 發(fā)布和運(yùn)行包含 ReplaceTextFilter 過(guò)濾器的Web 應(yīng) 用................................................576 20.5 異步處理過(guò)濾器................................579 20.6 小結(jié)...................................................582 20.7 思考題...............................................582 第21章 Web應(yīng)用中訪問(wèn)EJB 組件....587 21.1 JavaEE 體系結(jié)構(gòu)簡(jiǎn)介.......................587 21.2 安裝和配置WildFly服務(wù)器.............589 21.3 創(chuàng)建EJB 組件...................................590 21.3.1 編寫(xiě)Remote 接口.................591 21.3.2 編寫(xiě)Enterprise Java Bean 類(lèi)591 21.4 在Web 應(yīng)用中訪問(wèn)EJB組件..........593 21.5 發(fā)布JavaEE 應(yīng)用..............................595 21.5.1 在WildFly上發(fā)布EJB組件595 21.5.2 在WildFly上發(fā)布Web應(yīng)用596 21.5.3 在WildFly 上發(fā)布JavaEE 應(yīng)用 ...................................................597 21.6 小結(jié)...................................................598 21.7 思考題...............................................600 第22章 Web應(yīng)用中訪問(wèn)Web 服務(wù)....601 22.1 SOAP 簡(jiǎn)介........................................601 22.2 在Tomcat 上發(fā)布Axis Web 應(yīng)用....603 22.3 創(chuàng)建SOAP 服務(wù)...............................604 22.3.1 創(chuàng)建提供SOAP 服務(wù)的Java 類(lèi) ...................................................605 22.3.2 創(chuàng)建SOAP服務(wù)的發(fā)布描述文件 ...................................................605 22.4 發(fā)布和管理SOAP 服務(wù)...................606 22.4.1 發(fā)布SOAP 服務(wù)...................606 22.4.2 管理SOAP 服務(wù)...................607 22.5 創(chuàng)建和運(yùn)行SOAP 客戶程序............609 22.6 在bookstore 應(yīng)用中訪問(wèn)SOAP 服務(wù) ............................................................. 611 22.6.1 對(duì)SOAP服務(wù)方法的參數(shù)和返回 值的限制....................................611 22.6.2 創(chuàng)建BookDB 服務(wù)類(lèi)及 BookDBDelegate代理類(lèi)...........612 22.6.3 發(fā)布BookDBService 服務(wù)和 bookstore應(yīng)用...........................617 22.7 小結(jié)...................................................619 22.8 思考題...............................................620 第23章 Web應(yīng)用的MVC 設(shè)計(jì) 模式623 23.1 MVC 設(shè)計(jì)模式簡(jiǎn)介..........................623 23.2 JSP Model1 和JSP Model2...............625 23.3 Spring MVC 概述..............................627 23.3.1 Spring MVC的框架結(jié)構(gòu)......627 23.3.2 Spring MVC的工作流程......630 23.4 創(chuàng)建采用Spring MVC的Web 應(yīng)用630 23.4.1 建立Spring MVC的環(huán)境.....630 23.4.2 創(chuàng)建視圖...............................631 23.4.3 創(chuàng)建模型...............................632 23.4.4 創(chuàng)建Controller組件.............633 23.4.5 創(chuàng)建web.xml 文件和Spring MVC 配置文件.........................636 23.5 運(yùn)行helloapp 應(yīng)用............................637 23.6 小結(jié)...................................................638 23.7 思考題...............................................638 第2篇 Tomcat配置及第三方實(shí)用軟件的用法 第 24章 Tomcat的管理平臺(tái)................641 24.1 訪問(wèn)Tomcat 的管理平臺(tái)..................641 24.2 Tomcat 的管理平臺(tái)...........................642 24.2.1 管理Web應(yīng)用......................642 24.2.2 管理HTTP 會(huì)話...................644 24.2.3 查看Tomcat 服務(wù)器信息......645 24.3 小結(jié)...................................................646 第25章 安全域.....................................647 25.1 安全域概述........................................647 25.2 為Web 資源設(shè)置安全約束...............648 25.2.1 在web.xml 中加入 <security-constraint>元素..........649 25.2.2 在web.xml中加入<login-config> 元素............................................651 25.2.3 在web.xml 中加入 <security-role>元素...................654 25.3 內(nèi)存域...............................................655 25.4 JDBC 域.............................................656 25.4.1 用戶數(shù)據(jù)庫(kù)的結(jié)構(gòu)...............656 25.4.2 在MySQL 中創(chuàng)建和配置用戶數(shù) 據(jù)庫(kù)............................................657 25.4.3 配置<Realm>元素.................658 25.5 DataSource 域....................................659 25.6 在Web 應(yīng)用中訪問(wèn)用戶信息...........660 25.7 小結(jié)...................................................661 25.8 思考題...............................................661 第26章 Tomcat與其他HTTP 服務(wù)器集成 ...................................................................663 26.1 Tomcat 與HTTP 服務(wù)器集成的原理663 26.1.1 JK插件..................................664 26.1.2 AJP 協(xié)議................................665 26.2 在Windows下Tomcat與Apache服務(wù)器 集成.....................................................665 26.3 在Linux下Tomcat 與Apache服務(wù)器集 成.........................................................668 26.4 Tomcat 與IIS 服務(wù)器集成................670 26.4.1 安裝和啟動(dòng)IIS服務(wù)器.........670 26.4.2 準(zhǔn)備相關(guān)文件.......................671 26.4.3 編輯注冊(cè)表...........................672 26.4.4 在IIS 中加入“jakarta”虛擬目 錄................................................673 26.4.5 把JK 插件作為ISAPI 篩選器加 入到IIS......................................674 26.4.6 測(cè)試配置...............................675 26.5 Tomcat 集群.......................................675 26.5.1 配置集群系統(tǒng)的負(fù)載平衡器676 26.5.2 配置集群管理器...................678 26.6 小結(jié)...................................................682 26.7 思考題...............................................683 第27章 在Tomcat中配置SSI.............685 27.1 SSI 簡(jiǎn)介.............................................685 27.1.1 #echo指令.............................686 27.1.2 #include指令.........................688 27.1.3 #flastmod 指令......................689 27.1.4 #fsize 指令.............................690 27.1.5 #exec指令.............................690 27.1.6 #config指令..........................690 27.1.7 #if、#elif、#else 和#endif 指令 ....................................................692 27.2 在Tomcat 中配置對(duì)SSI 的支持......692 27.3 小結(jié)...................................................694 27.4 思考題...............................................694 第28章 Tomcat閥................................697 28.1 Tomcat 閥簡(jiǎn)介...................................697 28.2 客戶訪問(wèn)日志閥................................698 28.3 遠(yuǎn)程地址過(guò)濾閥................................700 28.4 遠(yuǎn)程主機(jī)過(guò)濾閥................................701 28.5 錯(cuò)誤報(bào)告閥........................................702 28.6 小結(jié)...................................................703 28.7 思考題...............................................703 第29章 在Tomcat中配置SSL...........705 29.1 SSL簡(jiǎn)介............................................705 29.1.1 加密通信...............................706 29.1.2 安全證書(shū)...............................706 29.1.3 SSL握手...............................707 29.2 在Tomcat 中使用SSL......................709 29.2.1 準(zhǔn)備安全證書(shū).......................709 29.2.2 配置SSL連接器...................710 29.2.3 訪問(wèn)支持SSL的Web站點(diǎn)..711 29.3 小結(jié)...................................................712 29.4 思考題...............................................712 第30章 用ANT工具管理Web 應(yīng)用..715 30.1 安裝配置ANT ..................................715 30.2 創(chuàng)建build.xml 文件..........................715 30.3 運(yùn)行ANT..........................................721 30.4 小結(jié)...................................................722 30.5 思考題...............................................723 第31章 使用Log4J 進(jìn)行日志操作.....725 31.1 Log4J簡(jiǎn)介........................................725 31.1.1 Logger 組件...........................726 31.1.2 Appender組件.......................727 31.1.3 Layout 組件...........................728 31.1.4 Logger 組件的繼承性...........729 31.2 Log4J 的基本使用方法.....................730 31.2.1 創(chuàng)建Log4J的配置文件........730 31.2.2 在程序中使用Log4J ............731 31.3 在helloapp 應(yīng)用中使用Log4J .........734 31.4 小結(jié)...................................................736 31.5 思考題...............................................736 第32章 Velocity模板語(yǔ)言...................739 32.1 獲得與Velocity相關(guān)的類(lèi)庫(kù)............739 32.2 Velocity的簡(jiǎn)單例子.........................740 32.2.1 創(chuàng)建Velocity模板................740 32.2.2 創(chuàng)建擴(kuò)展VelocityViewServlet的 Servlet 類(lèi)...................................740 32.2.3 發(fā)布和運(yùn)行基于Velocity的Web 應(yīng)用............................................741 32.3 注釋...................................................743 32.4 引用...................................................743 32.4.1 變量引用...............................744 32.4.2 屬性引用...............................744 32.4.3 方法引用...............................746 32.4.4 正式引用符...........................747 32.4.5 安靜引用符...........................747 32.4.6 轉(zhuǎn)義符...................................747 32.4.7 大小寫(xiě)替換...........................748 32.5 指令...................................................748 32.5.1 #set指令................................748 32.5.2 字面字符串...........................750 32.5.3 #if指令..................................750 32.5.4 比較運(yùn)算...............................751 32.5.5 #foreach 循環(huán)指令................752 32.5.6 #include指令.........................753 32.5.7 #parse指令............................754 32.5.8 #macro 指令..........................754 32.5.9 轉(zhuǎn)義VTL指令......................755 32.5.10 VTL的格式.........................756 32.6 其他特征...........................................756 32.6.1 數(shù)學(xué)運(yùn)算...............................756 32.6.2 范圍操作符...........................757 32.6.3 字符串的連接.......................757 32.7 小結(jié)...................................................758 32.8 思考題...............................................758 第33章 創(chuàng)建嵌入式Tomcat服務(wù)器...761 33.1 將Tomcat 嵌入Java 應(yīng)用.................761 33.2 創(chuàng)建嵌入了Tomcat 的Java 示范程序 .............................................................763 33.3 終止嵌入式Tomcat 服務(wù)器..............766 33.3.1 調(diào)用Tomcat類(lèi)的stop()方法終止 服務(wù)器........................................766 33.3.2 通過(guò)SHUTSDOWN 命令終止服 務(wù)器............................................766 33.4 運(yùn)行嵌入式Tomcat 服務(wù)器..............768 33.5 小結(jié)...................................................771 33.6 思考題...............................................771 附錄A server.xml文件..........................775 A.1 配置Server 元素................................776 A.2 配置Service 元素...............................777 A.3 配置Engine元素...............................777 A.4 配置Host 元素...................................778 A.5 配置Context 元素..............................778 A.6 配置Connector 元素..........................779 A.7 配置Executor 元素............................781 附錄B web.xml文件.............................783 B.1 配置過(guò)濾器.........................................785 B.2 配置Servlet ........................................786 B.3 配置Servlet 映射................................787 B.4 配置Session........................................787 B.5 配置Welcome 文件清單....................787 B.6 配置Tag Library.................................788 B.7 配置資源引用.....................................788 B.8 配置安全約束.....................................789 B.9 配置安全驗(yàn)證登錄界面.....................789 B.10 配置對(duì)安全驗(yàn)證角色的引用...........790 附錄C XML簡(jiǎn)介..................................791 C.1 SGML、HTML 與XML的比較......791 C.2 DTD 文檔類(lèi)型定義............................792 C.3 有效XML文檔以及簡(jiǎn)化格式的XML文 檔.........................................................793 C.4 XML中的常用術(shù)語(yǔ)...........................795 C.4.1 URL、URN和URI ...............795 C.4.2 XML命名空間.......................795 附錄D 書(shū)中涉及軟件獲取途徑...........799
你還可能感興趣
我要評(píng)論
|