《Spring 3.x 企業套用開發實戰 》是2012年2月出版 出版的圖書。
基本介紹
- 中文名:Spring 3.x 企業套用開發實戰
- 作者:陳雄華 林開雄
- ISBN:978-7-121-15213-9
- 定價:90.00元(含光碟1張)
出版信息,內容簡介,作者簡介,前 言,本書小述,本書的特點,本書的結構,如何使用本書,本書的插文,如何與作者聯繫,目 錄,
出版信息
《Spring 3.x 企業套用開發實戰》
陳雄華 林開雄 編著ISBN 978-7-121-15213-9
定價:90.00元(含光碟1張)
16開
728頁
10年技術專家邀您共享Spring饕餮盛宴
內容簡介
Spring 3.0是Spring在積蓄了3年之久後,隆重推出的一拘刪嘗放個定炒漿重大升級版本,進一步加強了Spring作為Java領域第一開源平台的翹楚地位。
Spring 3.0引入了眾多Java開發者翹首以盼的新功能和新特性,如OXM、校驗及格式化框架、REST風格的Web編程模型等。這些新功能實用性強、易用性高,可大幅降低Java套用,特別是Java Web套用開發的難度,同時有效提升套用開發的優雅性。
本書是在《精通Spring 2.x——企業套用開發詳解》的基礎上,經過歷時一年的重大調整改版而成的,本書延續了上一版本追求深度,注重原理,不停留在技術表面的寫作風格,力求使讀者在熟練使用Spring的各項功能的同時悼遷永,還能透徹理解Spring的內部實現,真正鑽乃做到知其然知其所以然。此外,本書重點突出了“實戰性”的主題,力求使全書“從實際項目中來,到實際項目中去”。
作者簡介
陳雄華:
2002年畢業於廈門大學計算機與信息工程學院,獲碩士學位。十年如一日如痴如愚鑽研技術,傾心代碼,對技術高峰身雖不能至,而心嚮往之。曾負責過十多個大型項目的設計和研發工作,還主持並研發了一個企業級的Java快速開發平台。
現為中圖一購網技術總監,負責網站整體技術架構搭建及網站核心模組的研發工作。
技術開發之餘,常將經驗所得行諸文字,作者已在IBM developerworks、天極網、IT168、各報刊雜誌發表過數十篇技術文章。
出版《精通JBuilder 2005》、《精通Spring 2.x——企業套用開發詳解》等技術書籍,廣受讀者喜愛。
林開雄:
前 言
本書小述
Spring為Java世界帶來了一場震撼性的技術革新,它顛覆了傳統Java套用開發笨重的方式,影響和正在影響著Java開發者思考問題的方法。從2004年發布第一個版本以來,Spring逐漸占據了Java開發人員的視線,博得了開源社區一片讚譽之聲,開源社區里“春”城無處不飛花。
在2006年發布Spring 2.0版本後,Spring的易用性,擴展性和整合性得到了充分的展示,越來越多Java開發者爭先恐後地投奔到Spring平台中來,Spring已成為事實上的Java套用開發平台,成為Java一站式輕量級平台的無冕之王。
在歷經長達3年的磨礪之後,2009年Spring 3.0橫空出世,挾帶著SpEL、OXM、REST、驗證/格式化等眾多令人驚艷的新功能再次掀起一場Spring的熱潮。筆者在2007年曾撰寫的拙作《精通Spring 2.x》已經顯得昨日黃花,有感於讀者朋友的青睞和出版社朋友的力促,一直希望能與時俱進將本書翻版更新,但囿於這兩年工作繁忙且筆者又不希望草率應付,遂使心中夙願沉積日久漸成心病。由於在可預知的未來皆難有大段空暇的時間,想起劉墉之創作《螢窗小語》都是掇拾繁忙之空隙集腋成裘,因此,筆者亦學習效仿之,利用節假日,周末等時間完成原版的改造,從2010年國慶開始到2011年國慶結束,歷時已一年矣。
本次改版,不但將全書內容更新同步到Spring 3.0,還對原版內容進行了大面積的最佳化和調整。例如,對單元測試、WebService等內容進行了全新重寫,對Spring事務管理各種疑難困惑詳細剖析,此外還引入一章逼真再現一個實戰性Web項目的匙局照開嫌舉炒發全過程等。所有這些調整的目的都是希望在延續前版的“深入”的同時,能讓本書更貼近於“實戰”。
本書的特點
揭示內幕、深入淺出:筆者對Spring的源碼進行了徹底的分析,深刻揭示了Spring框架的技術內幕,讓讀者知其然,更知其所以然。Spring中許多設計經驗、技巧、模式具有很高的借鑑性,在透徹學習Spring體系結構的同時,讀者可以直接將這些方法引借到具體的套用開發中。
同步更新、與時俱進:雖然在2009年9月就發布Spring 3.0第一個候選版本,後來又發布了多個RC版本,並最終於2011年10月發布了Spring 3.1的正式版本。新功能的添加以及舊功能的調整從來就沒有停止過。筆者在本書寫作過程中時刻關注Spring新版本功能的變化,並及時調整全書內容與其同步,保證全書內容與時俱進。
突出重點,淡化邊緣:雖然全書洋洋灑灑近800頁,便本書沒有片面追求內容的面面俱到,相反,我們特別注意內容的剪裁和取捨。對於實用性強的知識點深入分析、深度挖掘,而對於不常使用的知識點到為止,甚至不納入本書的範圍。舉例來說,我們對使用 Spring-WS開發基於Spring的Web Service套用、OXM、Spring MVC等這些實用性強的技術都進行了深入的分析,而對如何集成EJB、JMX、JCA等這些不常使用的功能完全不涉及。很好地做到了實用性和深入性二者的統一。
理論透徹、面向實踐:本書在透徹分析原理、講解技術知識點的同時,特別注意與實際套用的結合,筆者將自身豐富的實戰經驗糅合到全書的相關知識點上,很好地做到了知識講解和實踐經驗的結合。讓讀者在掌握純技術知識的同時,能夠對如何活用技術做到胸有成竹。如筆者在第13章講解任務調度的內容時,專門辟出13.6小節講解實際套用中任務調度的使用經驗;在第18章中講述使用JavaMail傳送電子郵件時,專門通過18.4小節講述了在實際套用中傳送郵件的各種注意事項。此外,我們還適時提供了“實戰經驗”的插文,它們在不影響上下文連貫性的同時讓讀者學習到了相關技術的實戰經驗。諸如此類以實際套用為導向的內容貫穿全書,這是本書區別於其他書籍特色之一。
代碼簡潔、圖例豐富:全書的代碼在排版布局以及內容的剪裁上頗費心思,實例代碼重點關注當前知識點涉及的內容,弱化邊緣代碼,並採用特殊的排版方式適時添加簡明扼要的注釋,方便程式代碼的閱讀和重點內容的把握。全書擁有大量精美的圖表,這些圖表很好地解構了上下文中一些難點的知識,大大提高了閱讀性,降低了理解的難度。
注重趣味、輕鬆閱讀:由於技術書籍的嚴謹性、知識性的特點,閱讀技術書籍往往是枯燥乏味的,更遑論趣味性。筆者對此深有感觸,為尋求一些突破,我們在全書大部分章節都精心設計一個“輕鬆一刻”,它們和上下文內容存在某種程度的關聯性,但其本身是一段趣味性的短文,它們在增強全書趣味性的同時,還為讀者提供另外一個思考問題的角度。
相關知識、一網打盡:Spring不但本身涉及眾多Java技術,其集成的第三方技術本身也涵蓋了豐富的知識。我們在介紹Spring相關技術時,都會簡明扼要地講解相關聯的基礎知識,這包括JDK 5.0的新知識和被集成技術的知識,準備好知識背景,而不是完全脫離背景知識的情況下孤立講解Spring的知識。
歷時一載、傾力打造:本書從籌劃到全書改版完成,歷經近一年的時間,筆者充分利用所有可用的空閒時間,多次拖延完稿的計畫,終於於2011年國慶才完成本書的所有稿件。
本書的結構
本書分為5大篇,其中第1篇為Spring概述性知識;第2篇講解了Spring的IoC和AOP的知識;第3篇講解Spring的各種數據訪問技術的內容;第4篇講解業務層和Web層的技術;第5篇講解面向實踐的單元測試及實戰項目。由於篇幅所限,筆者將郵件傳送及WebService的章節以電子文檔的形式作為附屬檔案放到光碟中,請讀者通過光碟進行閱讀。
下面簡要介紹一下每章的內容。
第1章:對Spring框架進行巨觀性的概述,力圖使讀者建立起對Spring整體性的認識。
第2章:通過一個簡單的例子展現開發Spring Web套用的整體過程,通過這個實例,讀者可以快速跨入Spring Web套用的世界。
第3章:講解Spring IoC容器的知識,通過具體的實例詳細地講解IoC概念。同時,對Spring框架的三個最重要的框架級接口進行了剖析,並對Bean的生命周期進行講解。
第4章:講解如何在Spring配置檔案中使用Spring 3.0的Schema格式配置Bean的內容,並對各個配置項的意義進行了深入的說明。
第5章:對Spring容器進行解構,從內部探究Spring容器的體系結構和運行流程。此外,我們還將對Spring容器一些高級主題進行深入的闡述。
第6章:我們從Spring AOP的底層實現技術入手,一步步深入到Spring AOP的核心中,分析它的底層結構和具體實現。
第7章:對如何使用基於AspectJ配置AOP的知識進行了深入的分析,這包括使用XML Schema配置檔案、使用註解進行配置等內容。
第8章:介紹了Spring所提供的DAO封裝層,這包括Spring DAO的異常體系、數據訪問模板等內容。
第9章:介紹了Spring事務管理的工作機制,通過XML、註解等方式進行事務管理配置,同時還講解了JTA事務配置知識。
第10章:對實際套用中Spring事務管理各種疑難問題進行透徹的剖析,讓讀者對Spring事務管理不再有雲遮霧罩的感覺。
第11章:講解了如何使用Spring JDBC進行數據訪問操作,我們還重點講述了LOB欄位處理、主鍵產生和獲取等難點知識。
第12章:講解了如何在Spring中集成Hibernate、myBatis等數據訪問框架,同時,讀者還將學習到ORM框架的混用和DAO層設計的知識。
第13章:本章重點對在Spring中如何使用Quartz進行任務調度進行了講解,同時還涉及了使用JDK Timer和JDK 5.0執行器的知識。
第14章:介紹Spring 3.0新增的OXM模組,同時對XML技術進行了整體的了解。
第15章:對Spring MVC框架進行詳細介紹,對REST風格編程方式進行重點講解,同時還對Spring 3.0的校驗和格式化框架如果和Spring MVC整合進行講解。
第16章:有別於一般書籍的單元測試內容,本書以當前最具實戰的JUnit4+Unitils+ Mockito複合測試框架對如何測試資料庫、Web的套用進行了深入的講解。
第17章:以一個實際的項目為藍本,帶領讀者從項目需求分析、項目設計、代碼開發、單元測試直到套用部署經歷整個實際項目的整體開發過程。
如何使用本書
讀者應該在機器上安裝MyEclipse 8.5,並下載Spring 3.0的最新發布包,在機器上重現書中實例的開發過程。畢竟程式開發是實踐性極強的工作,只有親身體驗才能掌握其真諦。
配套光碟擁有本書所有實例的代碼,讀者也可以在此基礎上重複本書的實例的開發過程,省去重新錄入代碼之苦。
本書的插文
本書會適時加入一些提示、實戰經驗和輕鬆一刻的小段插文,在不打斷行文的同時提供一些有益的開發經驗、使用技巧並增強閱讀的趣味性。這些插文都帶有一個小圖示加以突顯,說明如下:
提示:在上下文中可能存在一些讀者容易忽視或容易犯錯的地方,在提示信息中給予針對性的幫助信息。
實戰經驗:筆者將多年的開發實戰經驗適時介紹給大家。這些知識往往是不能從一般的書籍或資料中獲得的。本書會適時地在行文中將這些實戰經驗分享出來,相信可以使讀者朋友少走一些彎路。
輕鬆一刻:為了增強技術書籍閱讀的趣味性,全書每章幾乎都有一到兩個輕鬆一刻的短文,它們和上下文內容都存在某種程度的關聯性,不但為閱讀帶來了趣味性,還可以啟發讀者的思考。
此外,由於Spring 3.x擁有多個版本,為了保持行文的簡潔,除非特別指出,本書的Spring或Spring 3.0即代表當前最新的版本(Spring 3.1.x)。
如何與作者聯繫
由於Spring內容涵蓋面寬廣,涉及的內容非常多,同時由於作者水平有限,錯誤之處在所難免。我們不但歡迎讀者朋友來信交流,更期待各界高手、專家就不足之處給予賜教和斧正。您可以通過郵件與筆者聯繫。
陳雄華 廈門
目 錄
第1篇 概述
第1章 Spring概述2
第2章 快速入門13
第2篇 IoC和AOP
第3章 IoC容器概述40
第4章 在IoC容器中裝配Bean80
第5章 Spring容器高級主題135
第6章 Spring AOP基礎173
第7章 基於@AspectJ和Schema的AOP221
第3篇 數據訪問
第8章 Spring對DAO的支持274
第9章 Spring的事務管理289
第10章 Spring的事務管理難點剖析325
第11章 使用Spring JDBC訪問資料庫361
第12章 整合其他ORM框架398
第4篇 業務層及Web層技術
第13章 任務調度和異步執行器428
第14章 使用OXM進行對象XML映射463
第15章 Spring MVC503
第5篇 測試及實戰
第16章 實戰型單元測試592
第17章 實戰案例開發648
以下內容詳見本書配書光碟:
附錄A JavaMail傳送郵件711
附錄B 在Spring中開發Web Service738
在歷經長達3年的磨礪之後,2009年Spring 3.0橫空出世,挾帶著SpEL、OXM、REST、驗證/格式化等眾多令人驚艷的新功能再次掀起一場Spring的熱潮。筆者在2007年曾撰寫的拙作《精通Spring 2.x》已經顯得昨日黃花,有感於讀者朋友的青睞和出版社朋友的力促,一直希望能與時俱進將本書翻版更新,但囿於這兩年工作繁忙且筆者又不希望草率應付,遂使心中夙願沉積日久漸成心病。由於在可預知的未來皆難有大段空暇的時間,想起劉墉之創作《螢窗小語》都是掇拾繁忙之空隙集腋成裘,因此,筆者亦學習效仿之,利用節假日,周末等時間完成原版的改造,從2010年國慶開始到2011年國慶結束,歷時已一年矣。
本次改版,不但將全書內容更新同步到Spring 3.0,還對原版內容進行了大面積的最佳化和調整。例如,對單元測試、WebService等內容進行了全新重寫,對Spring事務管理各種疑難困惑詳細剖析,此外還引入一章逼真再現一個實戰性Web項目的開發全過程等。所有這些調整的目的都是希望在延續前版的“深入”的同時,能讓本書更貼近於“實戰”。
本書的特點
揭示內幕、深入淺出:筆者對Spring的源碼進行了徹底的分析,深刻揭示了Spring框架的技術內幕,讓讀者知其然,更知其所以然。Spring中許多設計經驗、技巧、模式具有很高的借鑑性,在透徹學習Spring體系結構的同時,讀者可以直接將這些方法引借到具體的套用開發中。
同步更新、與時俱進:雖然在2009年9月就發布Spring 3.0第一個候選版本,後來又發布了多個RC版本,並最終於2011年10月發布了Spring 3.1的正式版本。新功能的添加以及舊功能的調整從來就沒有停止過。筆者在本書寫作過程中時刻關注Spring新版本功能的變化,並及時調整全書內容與其同步,保證全書內容與時俱進。
突出重點,淡化邊緣:雖然全書洋洋灑灑近800頁,便本書沒有片面追求內容的面面俱到,相反,我們特別注意內容的剪裁和取捨。對於實用性強的知識點深入分析、深度挖掘,而對於不常使用的知識點到為止,甚至不納入本書的範圍。舉例來說,我們對使用 Spring-WS開發基於Spring的Web Service套用、OXM、Spring MVC等這些實用性強的技術都進行了深入的分析,而對如何集成EJB、JMX、JCA等這些不常使用的功能完全不涉及。很好地做到了實用性和深入性二者的統一。
理論透徹、面向實踐:本書在透徹分析原理、講解技術知識點的同時,特別注意與實際套用的結合,筆者將自身豐富的實戰經驗糅合到全書的相關知識點上,很好地做到了知識講解和實踐經驗的結合。讓讀者在掌握純技術知識的同時,能夠對如何活用技術做到胸有成竹。如筆者在第13章講解任務調度的內容時,專門辟出13.6小節講解實際套用中任務調度的使用經驗;在第18章中講述使用JavaMail傳送電子郵件時,專門通過18.4小節講述了在實際套用中傳送郵件的各種注意事項。此外,我們還適時提供了“實戰經驗”的插文,它們在不影響上下文連貫性的同時讓讀者學習到了相關技術的實戰經驗。諸如此類以實際套用為導向的內容貫穿全書,這是本書區別於其他書籍特色之一。
代碼簡潔、圖例豐富:全書的代碼在排版布局以及內容的剪裁上頗費心思,實例代碼重點關注當前知識點涉及的內容,弱化邊緣代碼,並採用特殊的排版方式適時添加簡明扼要的注釋,方便程式代碼的閱讀和重點內容的把握。全書擁有大量精美的圖表,這些圖表很好地解構了上下文中一些難點的知識,大大提高了閱讀性,降低了理解的難度。
注重趣味、輕鬆閱讀:由於技術書籍的嚴謹性、知識性的特點,閱讀技術書籍往往是枯燥乏味的,更遑論趣味性。筆者對此深有感觸,為尋求一些突破,我們在全書大部分章節都精心設計一個“輕鬆一刻”,它們和上下文內容存在某種程度的關聯性,但其本身是一段趣味性的短文,它們在增強全書趣味性的同時,還為讀者提供另外一個思考問題的角度。
相關知識、一網打盡:Spring不但本身涉及眾多Java技術,其集成的第三方技術本身也涵蓋了豐富的知識。我們在介紹Spring相關技術時,都會簡明扼要地講解相關聯的基礎知識,這包括JDK 5.0的新知識和被集成技術的知識,準備好知識背景,而不是完全脫離背景知識的情況下孤立講解Spring的知識。
歷時一載、傾力打造:本書從籌劃到全書改版完成,歷經近一年的時間,筆者充分利用所有可用的空閒時間,多次拖延完稿的計畫,終於於2011年國慶才完成本書的所有稿件。
本書的結構
本書分為5大篇,其中第1篇為Spring概述性知識;第2篇講解了Spring的IoC和AOP的知識;第3篇講解Spring的各種數據訪問技術的內容;第4篇講解業務層和Web層的技術;第5篇講解面向實踐的單元測試及實戰項目。由於篇幅所限,筆者將郵件傳送及WebService的章節以電子文檔的形式作為附屬檔案放到光碟中,請讀者通過光碟進行閱讀。
下面簡要介紹一下每章的內容。
第1章:對Spring框架進行巨觀性的概述,力圖使讀者建立起對Spring整體性的認識。
第2章:通過一個簡單的例子展現開發Spring Web套用的整體過程,通過這個實例,讀者可以快速跨入Spring Web套用的世界。
第3章:講解Spring IoC容器的知識,通過具體的實例詳細地講解IoC概念。同時,對Spring框架的三個最重要的框架級接口進行了剖析,並對Bean的生命周期進行講解。
第4章:講解如何在Spring配置檔案中使用Spring 3.0的Schema格式配置Bean的內容,並對各個配置項的意義進行了深入的說明。
第5章:對Spring容器進行解構,從內部探究Spring容器的體系結構和運行流程。此外,我們還將對Spring容器一些高級主題進行深入的闡述。
第6章:我們從Spring AOP的底層實現技術入手,一步步深入到Spring AOP的核心中,分析它的底層結構和具體實現。
第7章:對如何使用基於AspectJ配置AOP的知識進行了深入的分析,這包括使用XML Schema配置檔案、使用註解進行配置等內容。
第8章:介紹了Spring所提供的DAO封裝層,這包括Spring DAO的異常體系、數據訪問模板等內容。
第9章:介紹了Spring事務管理的工作機制,通過XML、註解等方式進行事務管理配置,同時還講解了JTA事務配置知識。
第10章:對實際套用中Spring事務管理各種疑難問題進行透徹的剖析,讓讀者對Spring事務管理不再有雲遮霧罩的感覺。
第11章:講解了如何使用Spring JDBC進行數據訪問操作,我們還重點講述了LOB欄位處理、主鍵產生和獲取等難點知識。
第12章:講解了如何在Spring中集成Hibernate、myBatis等數據訪問框架,同時,讀者還將學習到ORM框架的混用和DAO層設計的知識。
第13章:本章重點對在Spring中如何使用Quartz進行任務調度進行了講解,同時還涉及了使用JDK Timer和JDK 5.0執行器的知識。
第14章:介紹Spring 3.0新增的OXM模組,同時對XML技術進行了整體的了解。
第15章:對Spring MVC框架進行詳細介紹,對REST風格編程方式進行重點講解,同時還對Spring 3.0的校驗和格式化框架如果和Spring MVC整合進行講解。
第16章:有別於一般書籍的單元測試內容,本書以當前最具實戰的JUnit4+Unitils+ Mockito複合測試框架對如何測試資料庫、Web的套用進行了深入的講解。
第17章:以一個實際的項目為藍本,帶領讀者從項目需求分析、項目設計、代碼開發、單元測試直到套用部署經歷整個實際項目的整體開發過程。
如何使用本書
讀者應該在機器上安裝MyEclipse 8.5,並下載Spring 3.0的最新發布包,在機器上重現書中實例的開發過程。畢竟程式開發是實踐性極強的工作,只有親身體驗才能掌握其真諦。
配套光碟擁有本書所有實例的代碼,讀者也可以在此基礎上重複本書的實例的開發過程,省去重新錄入代碼之苦。
本書的插文
本書會適時加入一些提示、實戰經驗和輕鬆一刻的小段插文,在不打斷行文的同時提供一些有益的開發經驗、使用技巧並增強閱讀的趣味性。這些插文都帶有一個小圖示加以突顯,說明如下:
提示:在上下文中可能存在一些讀者容易忽視或容易犯錯的地方,在提示信息中給予針對性的幫助信息。
實戰經驗:筆者將多年的開發實戰經驗適時介紹給大家。這些知識往往是不能從一般的書籍或資料中獲得的。本書會適時地在行文中將這些實戰經驗分享出來,相信可以使讀者朋友少走一些彎路。
輕鬆一刻:為了增強技術書籍閱讀的趣味性,全書每章幾乎都有一到兩個輕鬆一刻的短文,它們和上下文內容都存在某種程度的關聯性,不但為閱讀帶來了趣味性,還可以啟發讀者的思考。
此外,由於Spring 3.x擁有多個版本,為了保持行文的簡潔,除非特別指出,本書的Spring或Spring 3.0即代表當前最新的版本(Spring 3.1.x)。
如何與作者聯繫
由於Spring內容涵蓋面寬廣,涉及的內容非常多,同時由於作者水平有限,錯誤之處在所難免。我們不但歡迎讀者朋友來信交流,更期待各界高手、專家就不足之處給予賜教和斧正。您可以通過郵件與筆者聯繫。
陳雄華 廈門
目 錄
第1篇 概述
第1章 Spring概述2
第2章 快速入門13
第2篇 IoC和AOP
第3章 IoC容器概述40
第4章 在IoC容器中裝配Bean80
第5章 Spring容器高級主題135
第6章 Spring AOP基礎173
第7章 基於@AspectJ和Schema的AOP221
第3篇 數據訪問
第8章 Spring對DAO的支持274
第9章 Spring的事務管理289
第10章 Spring的事務管理難點剖析325
第11章 使用Spring JDBC訪問資料庫361
第12章 整合其他ORM框架398
第4篇 業務層及Web層技術
第13章 任務調度和異步執行器428
第14章 使用OXM進行對象XML映射463
第15章 Spring MVC503
第5篇 測試及實戰
第16章 實戰型單元測試592
第17章 實戰案例開發648
以下內容詳見本書配書光碟:
附錄A JavaMail傳送郵件711
附錄B 在Spring中開發Web Service738