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