出版時間:2008-11 出版社:人民郵電出版社 作者:(美)拉德(Ladd,S.) 等著;徐哲,沈艷 譯 頁數(shù):334 字數(shù):508000
Tag標簽:無
前言
Spring MVC和Spring Web Flow是Spring的開發(fā)人員和社區(qū)為我們帶來的兩個非常靈活和強大的兩個Web框架。Spring MVC是一個構建于Spring Framework之上的現(xiàn)代Web應用程序框架;而Spring Web Flow則是一個現(xiàn)在已經(jīng)獨立于Spring Framework之外、用于配合Spring MVC的新項目,主要用于構建.-INNN封裝了豐富的頁面導航規(guī)則的Web控制器模塊。本書深入探討了這兩個框架。除了詳細分析代碼及其功能之外,我們還穿插了與這兩個框架以及一般意義上的Web開發(fā)相關的大量技巧?! ∥覀儗懽鞅緯哪康氖歉嬖V讀者如何最大程度地發(fā)揮出這兩個框架的潛力。在本書的幫助下,你可以更清楚地研究源代碼,加深對框架的理解,開發(fā)出高質量的應用程序。 我們在開發(fā)Spring MVC和Spring Web Flow時充分運用了設計模式和許多面向對象的專家技術。本書不僅將解釋我們設計這兩個框架時的許多設計決策是如何做出的,而且還會告訴讀者如何在自己的項目中應用類似的設計思路和技巧。 我們花費了不少心血,力圖講清楚Spring MVC和Spring Web Flow兩個框架的每個細節(jié),給讀者建立大局觀。除了它們最著名的特性之外,我們還講述了許多不為人知的技術亮點。但是我們深知,框架不可能解決所有問題,所以還詳細探討了如何正確和安全地擴展框架,得到靈活、更符合客戶需求的解決方案。 無論你是初學者,還是專家,通過本書,你可以更加自信地投入到Spring Web應用的開發(fā)中去。致謝 一本書僅靠作者是不可能完成的,它是很多人的專業(yè)知識、辛勤勞動、寶貴時間和超常努力的成果。本書應歸功于參與其事的每個人。 首先我要感謝我的妻子,一個擁有天使般耐心的人。她的愛和支持陪伴我寫作的始終?! ∥乙惨兄x我的合著者,因為他們貢獻了獨特而無價的知識和洞察力,從而產(chǎn)生了比我單獨創(chuàng)作更出色的著作。感謝Darren、Steven、Keith和c01in! 如果沒有Apress出版社編輯們的才干和專業(yè)知識,這本書不可能面世。具體地說,我衷心感謝Sofia Marchant~~Beckie Brand協(xié)調各部門,并盡最大努力確保本書做到最好。我要特別感謝Stephanie Provines,沒有她的幫助,我們將很難完成Spring MVC的相關內容。她對細節(jié)的關注令人印象深刻,而且極具價值。我也要特別感謝Steve Anglin給了我這個機會。
內容概要
本書是Spring MVC和Web Flow兩個框架的權威指南,書中包括的技巧和提示可以讓你從這個靈活的框架中汲取盡可能多的信息。書中包含了一些開發(fā)良好設計和解耦的Web應用程序的最佳實踐,介紹了Spring框架中的Spring MVC和Spring Web Flow,以及著重介紹利用Sprin9框架和Spring MVC編寫Web應用程序的最佳方法。本書還介紹了Sprin9框架的設計模式,以及如何將同樣的設計和技術應用到讀者自己的代碼中。 本書適合各層次Spring Web程序員閱讀。
書籍目錄
第1章 概述 1.1 閱讀順序 1.2 本書縱覽 1.3 導引 1.4 讀者對象 1.5 進一步的資源 1.6 升級到Spring的新版本 1.7 本章小結 第2章 Spring框架 2.1 控制反轉 2.1.1 控制反轉實例 2.1.2 小結 2.2 依賴注入 2.2.1 Service Locator模式 2.2.2 依賴注入 2.3 Spring的ApplicationContext 2.4 POJO歸來 2.5 對Web應用程序的影響 2.6 本章小結 第3章 Spring MVC應用程序架構 3.1 抽象層 3.1.1 層隔離 3.1.2 Java接口作為層的約定 3.1.3 Spring MVC應用程序中的層 3.2 選擇:條條大路通羅馬 3.3 本章小結 第4章 Spring MVC初體驗 4.1 用例 4.1.1 服務接口 4.1.2 用例1 4.1.3 用例2 4.1.4 小結 4.2 Web組件 4.2.1 JAR依賴 4.2.2 Controller類 4.2.3 View類 4.2.4 ModelAndView類 4.3 構建主頁用例 4.3.1 Spring MVC 組件 4.3.2 Web應用程序配置 4.3.3 啟動應用程序 4.3.4 請求處理順序 4.3.5 小結 4.4 構建航班搜索用例 4.4.1 SimpleFormController 4.4.2 SearchFlightsController 4.4.3 表單視圖 4.4.4 Spring JSP標簽 4.4.5 成功視圖 4.4.6 小結 4.5 整裝待發(fā) 第5章 處理管道 5.1 處理請求 5.1.1 請求工作流 5.1.2 功能概覽 5.1.3 處理請求的各組件 5.2 本章小結 第6章 深入解析Controller 6.1 概述 6.2 Controller接口和實現(xiàn) 6.2.1 設計初探 6.2.2 AbstractController 6.2.3 BaseCommandController 6.2.4 綁定表單到bean 6.2.5 SimpleFormController和處理表單 6.2.6 Redirect After Submit模式 6.2.7 MultiActionController 6.2.8 AbstractWizardFormController 6.2.9 ThrowawayController 6.2.10 ValidatableThrowaway-Controller 6.3 HandlerInterceptor 6.3.1 HandlerInterceptor示例 6.3.2 小結 6.4 本章小結 第7章 視圖層 7.1 視圖中包含什么 7.2 Spring的視圖接口 7.2.1 實現(xiàn)視圖 7.2.2 View和Controller:愉快的分離 7.3 ViewResolver 7.3.1 在上下文中解析視圖 7.3.2 ViewResolver的類型 7.3.3 使Dispatcher知道ViewResolver 7.4 重定向簡述 7.5 主題 7.5.1 ThemeSource 7.5.2 ThemeResolver 7.6 視圖層的國際化 7.6.1 區(qū)域解析 7.6.2 MessageSource Bean 7.6.3 視圖解析 7.6.4 主題解析 7.7 綁定支持 7.7.1 綁定和驗證順序的概述 7.7.2 視圖模板的綁定支持 7.8 本章小結 第8章 受支持的視圖類型 8.1 JSP和JSTL 8.1.1 模型暴露為請求屬性 8.1.2 展示模型 8.1.3 JSP標簽庫 8.1.4 表單 8.2 Tiles 8.3 Velocity和FreeMarker 8.3.1 模板的優(yōu)點和缺點 8.3.2 模板引擎的基本配置 8.3.3 暴露模型 8.3.4 模板語言 8.3.5 高級配置選項 8.3.6 表單和SpringBind宏 8.3.7 數(shù)字和日期工具 8.3.8 附加的Velocity視圖 8.3.9 小結 8.4 XML和XSLT 8.4.1 定義XSLT視圖 8.4.2 轉化XML源代碼 8.4.3 返回原始狀態(tài)的XML 8.4.4 XSLT的其他顯著功能 8.4.5 小結 8.5 PDF 8.5.1 配置應用程序以使用PDF視圖 8.5.2 用FOP創(chuàng)建模板PDF 8.6 Excel 8.6.1 創(chuàng)建模板 8.6.2 編程 8.6.3 配置應用程序 8.7 JasperReports 8.7.1 多種形式的視圖 8.7.2 填充報表 8.7.3 小結 8.8 創(chuàng)建新視圖 8.9 本章小結 第9章 驗證 9.1 編程式Validator 9.2 聲明式Validator 9.3 消息源 9.4 Validator和業(yè)務邏輯 9.5 Errors接口 9.6 測試驗證器 9.7 本章小結 第10章 測試Spring MVC應用程序 10.1 概覽 10.1.1 單元測試 10.1.2 單元測試小結 10.1.3 集成測試 10.2 測試小結 第11章 Spring Web Flow入門 11.1 Spring Web Flow的動機 11.1.1 servlet規(guī)范的問題 11.1.2 解決方案 11.2 不是萬能鑰匙 11.3 總覽 11.3.1 架構概覽 11.3.2 Spring Web Flow系統(tǒng)內部 11.3.3 不同的作用域 11.3.4 組成 11.4 第一個流 11.4.1 安裝Spring Web Flow 11.4.2 提出流目錄結構 11.4.3 Purchase Product流定義 11.4.4 實現(xiàn)第一步:視圖狀態(tài) 11.4.5 過渡 11.4.6 動作 11.4.7 Action bean定義 11.4.8 測試流執(zhí)行 11.4.9 擴展AbstractFlowExecution-Tests 11.4.10 決定狀態(tài) 11.4.11 動作狀態(tài) 11.4.12 結束狀態(tài) 11.4.13 Purchase Product流:接下來做什么 11.4.14 Spring MVC部署 11.4.15 FlowController 11.4.16 FlowRegistry 11.4.17 附加配置 11.4.18 視圖模板解析 11.4.19 視圖模板要求 11.4.20 從瀏覽器中啟動流 11.5 本章小結 11.5.1 模型對話 11.5.2 允許擴展 11.5.3 可測試 11.5.4 鑒別流(簡單而自然的語言) 第12章 高級Spring Web Flow 12.1 業(yè)務邏輯和流 12.2 流粒度 12.2.1 子流 12.2.2 內嵌流 12.2.3 小結 12.3 管理FlowExecutions 12.3.1 與Web框架集成 12.3.2 FlowExecutionManager 12.3.3 FlowExecution 12.3.4 FlowExecutionListener 12.4 FlowExecution倉庫 12.4.1 延續(xù)鍵 12.4.2 FlowExecutionRepository實現(xiàn) 12.4.3 有狀態(tài)FlowExecution倉庫 12.4.4 無狀態(tài)FlowExecution倉庫 12.4.5 完成后對話失效 12.5 再次訪問的狀態(tài)和過渡 12.5.1 動作狀態(tài) 12.5.2 POJO動作 12.5.3 暴露POJO方法返回值 12.5.4 使用視圖狀態(tài)和結束狀態(tài)定制視圖選擇 12.5.5 決定狀態(tài) 12.6 異常處理 12.7 異常處理小結 12.8 本章小結 附錄A MVC應用程序的文檔 A.1 BeanDoc A.1.1 安裝和構建BeanDoc A.1.2 在配置文件上運行BeanDoc A.1.3 其他選項 A.1.4 控制輸出 A.2 小結 附錄B Ajax和DWR B.1 Spring和DWR B.2 應用的示例 B.2.1 配置和代碼改變 B.2.2 介紹文件改變 B.3 無障礙 B.4 小結
章節(jié)摘錄
第1章 概述 1.1 閱讀順序 假如你是個急性子的人,很可能完全跳過這一章直奔代碼。給你一條建議:若想一躍而過開始構建Spring MVC應用程序的話,請閱讀第4章,那里有一些基本資料教你如何構建第一個Spring MVC應用程序。同時,我們也建議你返回到前面的章節(jié),了解運用Spring MVC倉q建Web應用程序的理論及背景,這些有助于你更好地理解本書其他部分的內容?! ?.2本書縱覽 本書是Spring MVC諸多特性及功能的全面指南,其中包括的技巧和提示可以讓你從這個靈活的框架中汲取盡可能多的信息,書中還包含了一些開發(fā)良好設計和解耦的Web應用程序的最佳實踐?! ”緯仁侵改嫌质墙坛?,也是Web開發(fā)手冊。將本書與Rob Harrop和Jan Machacek(Apress)合著的Pro Spring共讀,將能收到最佳效果,因為本書沒有從一般意義上討論Spring框架,而是主要探討利用Spring框架及Spring MVC編寫Web應用程序的最佳方法。 1.3導引 本書涵蓋的范圍極廣。本導引及章節(jié)大綱從總體上展示了書中內容及其所處位置。 第1章概述了本書內容,介紹了本書所面向的讀者對象,并告訴讀者如何獲得更多信息和支持?! 〉?章復Spring框架,說明該框架存在的原因及其作用。整本書都在講Spring框架,該章會激發(fā)你開始探索這個框架。如果你對其完全陌生,就需要購買一本講述Spring框架的書,比如Pro Spring?! 〉?章涵蓋了典型Spring MVC應用程序的架構和設計。輕代碼而重設計,該章詳細介紹了Web應用程序中共有的層以及充分利用Spring框架構建應用程序的一些簡單指導原則。 第4章進入實質性內容,講述Spring MVC。急于學習的讀者會發(fā)現(xiàn),這是體驗實際應用程序的良好開端。該章沒有涉及過多細節(jié),但它確實運用了第3章中講到的知識來構建一些實實在在的功能?! 〉?章深入講述Spring MVC真正的工作機制:DispatcherServlet。該章講述了所有Web應用程序都需要的配套服務以及如何對其進行配置和擴展。
編輯推薦
《深入解析Spring MVCgn Web Flow》來自Spring開發(fā)團隊的權威之作前所未有地深入剖析Spring MVC技術內幕大量專家經(jīng)驗和技巧,全面提升你的Web開發(fā)境界 Spring MVC和Spring Web Flow是Spring平臺上兩個極為靈活而且功能強大的Web框架。前者是構建在Spring框架上的Web應用程序框架,可以同許多其他視圖技術無縫集成;后者是控制業(yè)務處理流程的有效解決方案,提供了一種編寫有狀態(tài)和基于會話的Web應用程序的簡便手段?! 渡钊虢馕鯯pring MVCgn Web Flow》出自Spring核心開發(fā)者之手,不僅詳細分析代碼,全面剖析了兩個框架的各種特性(包括一些不為人知的技術亮點)。告訴讀者如何最大程度地發(fā)揮出它們的潛力。還解密了設計這兩個框架時的許多決策內幕、所應用的設計模式和面向對象技術,使讀者能夠更深入地了解Spring。并在自己的項目中運用這些專家技術,全面提升自己的Web開發(fā)境界?! 渡钊虢馕鯯pring MVCgn Web Flow》由spring框架的開發(fā)和維護者SpringSource公司組織編寫,作者均為資深Spring工程師或咨詢師?! eth Ladd是資深Spring培訓師,曾為NEC公司等許多國際性機構構建Web系統(tǒng)。Darren Davison和StevenDevijver都曾是Spring核心開發(fā)人員,在Spring源代碼和文檔中可以很容易地找到他們的名字。而Colin Yates、Keith Donald和Rob Harrop均是SpringSource資深工程師,仍然是Spring新版本開發(fā)的核心骨干。Yalcs是.J2EE主架構師,Donald是SpringWeb Flow負責人,Hartop是Spring與Tomcat成產(chǎn)品負責人?!啊渡钊虢馕鯯pring MVCgn Web Flow》為Spring社區(qū)彌補了一大空白?!薄 狶asse Koskela.JavaRanch版主,Test Driven作者“《深入解析Spring MVCgn Web Flow》是非常急缺的深入講解Spring MVCf~~Spring Web Flow的圖書堪與Pro Spring相媲美。” ——Steve Anglin,資深Java技術專家
圖書封面
圖書標簽Tags
無
評論、評分、閱讀與下載
深入解析Spring MVC與Web Flow PDF格式下載