Spring技術內幕

Spring技術內幕

《Spring技術內幕》是2012年機械工業出版社出版的圖書,作者是計文柯。該書適合Java程式設計師、Spring開發者、平台開發人員、系統架構師,、對開源軟體原始碼著迷的代碼狂人。

編輯推薦

暢銷書全新升級,第1版廣獲好評,摘取Spring類圖書銷量桂冠,掀起Java類圖書銷售熱潮

系統解讀Spring最新版本原始碼,從巨觀和微觀兩個角度深入剖析Spring架構設計與實現原理

資深Java專家親自執筆,Java開發者社區和Spring開發者社區聯袂推薦

內容簡介

《Spring技術內幕:深入解析Spring架構與設計原理(第2版)》是國內唯一一本系統分析Spring原始碼的著作,也是Spring領域的問鼎之作,由業界擁有10餘年開發經驗的資深Java專家親自執筆,Java開發者社區和Spring開發者社區聯袂推薦。本書第1版不僅在內容上獲得了讀者的廣泛好評,而且在銷量上也摘取了同類書的桂冠,曾經一度掀起Java類圖書的銷售熱潮。第2版不僅繼承了第1版在內容組織和寫作方式上的優點,而且還根據廣大讀者的反饋改進了若干細節上的不足。更為重要的是,結合Spring的最新版本對過時的內容進行了更新,並增加了大量新內容,使本書更趨近於完美。

本書從原始碼的角度對Spring的核心和各個主要功能模組的架構、設計和實現原理進行了深入剖析。你不僅能從本書中參透Spring框架的優秀架構和設計思想,還能從Spring優雅的實現源碼中一窺Java語言的精髓。本書在開篇之前對Spring的設計理念和整體架構進行了全面的介紹,能讓讀者從巨觀上釐清Spring各個功能模組之間的關係;第一部分詳細分析了Spring的核心:IoC容器和AOP的實現,能幫助讀者了解Spring的運行機制;第二部分深入闡述了各種基於IoC容器和AOP的Java EE組件在Spring中的實現原理;第三部分講述了ACEGI安全框架、DM模組以及Flex模組等基於Spring的典型套用的設計與實現。

作者簡介

計文柯,資深軟體開發專家和項目經理,擁有10餘年業界經驗,對Spring等開源軟體的套用和實現原理有深入研究和獨到見解。產品研發和項目管理經驗豐富,曾就職於華為、摩托羅拉等知名企業和矽谷移動網際網路創業公司,在軟體工程和項目管理方面積累了大量最佳實踐。現與同伴一起創立並運營深圳雲果科技,專注於雲計算解決方案的研究與實施。

媒體評論

正如當初所預料的,本書的第1版大獲成功,不僅獲得了良好的口碑,而且也取得了喜人的銷售成績,堪稱Spring圖書領域的里程碑著作。在改版之前,作者收集了大量讀者對第1版的反饋,不僅改進了第1版中存在的不足,而且還在組織結構和寫作方式進行了最佳化。更為重要的是,第2版增加了大量新的內容,使本書的內容更豐富、更深入。相信第2版會比第1版更值得期待。強烈推薦!

——專業Spring開發者社區

本書第一版熱銷的事實有力地證明了這的確是一本值得所有Spring開發者反覆研讀的書。它以原始碼分析為手段,對Spring的架構原理和設計思想進行了全面地剖析,不僅能讓我們更深入、更徹底地認識Spring,領略Spring的架構之美和設計之美,更重要的是,它將全面提升我們的Spring開發技能。

——Spring中文用戶組

作品目錄

前言

第1章 Spring的設計理念和整體架構

1.1 Spring的各個子項目

1.2 Spring的設計目標

1.3 Spring的整體架構

1.4 Spring的套用場景

1.5 小結

第一部分 Spring核心實現篇

第2章 Spring Framework的核心:IoC容器的實現

2.1 Spring IoC容器概述

2.1.1 IoC容器和依賴反轉模式

2.1.2 Spring IoC的套用場景

2.2 IoC容器系列的設計與實現:BeanFactory和ApplicationContext

2.2.1 Spring的IoC容器系列

2.2.2 Spring IoC容器的設計

2.3 IC容器的初始化過程

2.3.1 BeanDefinition的Resource定位

2.3.2 BeanDefinition的載入和解析

2.3.3 BeanDefinition在IoC容器中的註冊

2.4 IoC容器的依賴注入

2.5 容器其他相關特性的設計與實現

2.5.1 ApplicationContext和Bean的初始化及銷毀

2.5.2 lazy-init屬性和預實例化

2.5.3 FactoryBean的實現

2.5.4 BeanPostProcessor的實現

2.5.5 autowiring(自動依賴裝配)的實現

2.5.6 Bean的依賴檢查

2.5.7 Bean對IoC容器的感知

2.6 小結

第3章 Spring AOP的實現

3.1 Spring AOP概述

3.1.1 AOP概念回顧

3.1.2 Advice通知

3.1.3 Pointcut切點

3.1.4 Advisor通知器

3.2 Spring AOP的設計與實現

3.2.1 JVM的動態代理特性

3.2.2 Spring AOP的設計分析

3.2.3 Spring AOP的套用場景

3.3 建立AopProxy代理對象

3.3.1 設計原理

3.3.2 配置ProxyFactoryBean

3.3.3 ProxyFactoryBean生成AopProxy代理對象

3.3.4 JDK生成AopProxy代理對象

3.3.5 CGLIB生成AopProxy代理對象

3.4 Spring AOP攔截器調用的實現

3.4.1 設計原理

3.4.2 JdkDynamicAopProxy的invoke攔截

3.4.3 Cglib2AopProxy的intercept攔截

3.4.4 目標對象方法的調用

3.4.5 AOP攔截器鏈的調用

3.4.6 配置通知器

3.4.7 Advice通知的實現

3.4.8 ProxyFactory實現AOP

3.5 Spring AOP的高級特性

3.6 小結

第二部分 Spring組件實現篇

第4章 Spring MVC與Web環境

4.1 Spring MVC概述

4.2 Web環境中的Spring MVC

4.3 上下文在Web容器中的啟動

4.3.1 IoC容器啟動的基本過程

4.3.2 Web容器中的上下文設計

4.3.3 ContextLoader的設計與實現

4.4 Spring MVC的設計與實現

4.4.1 Spring MVC的套用場景

4.4.2 Spring MVC設計概覽

4.4.3 DispatcherServlet的啟動和初始化

4.4.4 MVC處理HTTP分發請求

4.5 Spring MVC視圖的呈現

4.5.1 DispatcherServlet視圖呈現的設計

4.5.2 JSP視圖的實現

4.5.3 ExcelView的實現

4.5.4 PDF視圖的實現

4.6 小結

第5章 資料庫操作組件的實現

5.1 Spring JDBC的設計與實現

5.1.1 套用場景

5.1.2 設計概要

5.2 Spring JDBC中模板類的設計與實現

5.2.1 設計原理

5.2.2 JdbcTemplate的基本使用

5.2.3 JdbcTemplate的execute實現

5.2.4 JdbcTemplate的query實現

5.2.5 使用資料庫Connection

5.3 Spring JDBC中RDBMS操作對象的實現

5.3.1 SqlQuery的實現

5.3.2 SqlUpdate的實現

5.3.3 SqlFunction

5.4 Spring ORM的設計與實現

5.4.1 套用場景

5.4.2 設計概要

5.5 Spring驅動Hibernate的設計與實現

5.5.1 設計原理

5.5.2 Hibernate的SessionFactory

5.5.3 HibernateTemplate的實現

5.5.4 Session的管理

5.6 Spring驅動iBatis的設計與實現

5.6.1 設計原理

5.6.2 創建SqlMapClient

5.6.3 SqlMapClientTemplate的實現

5.7 小結

第6章 Spring事務處理的實現

6.1 Spring與事務處理

6.2 Spring事務處理的設計概覽

6.3 Spring事務處理的套用場景

6.4 Spring聲明式事務處理

6.4.1 設計原理與基本過程

6.4.2 實現分析

6.5 Spring事務處理的設計與實現

6.5.1 Spring事務處理的編程式使用

6.5.2 事務的創建

6.5.3 事務的掛起

6.5.4 事務的提交

6.5.5 事務的回滾

6.6 Spring事務處理器的設計與實現

6.6.1 Spring事務處理的套用場景

6.6.2 DataSourceTransactionManager的實現

6.6.3 HibernateTransactionManager的實現

6.7 小結

第7章 Spring遠端調用的實現

7.1 Spring遠端調用的套用場景

7.2 Spring遠端調用的設計概覽

7.3 Spring遠端調用的實現

7.3.1 Spring HTTP調用器的實現

7.3.2 Spring Hession

7.3.3 Spring RMI的實現

7.4 小結

第三部分 Spring套用實現篇

第8章 安全框架ACEGI的設計與實現

8.1 Spring ACEGI安全框架概述

8.1.1 概述

8.1.2 設計原理與基本實現過程

8.1.3 ACEGI的Bean配置

8.2 配置Spring ACEGI

8.3 ACEGI的Web過濾器實現

8.4 ACEGI驗證器的實現

8.4.1 AuthenticationManager的authenticate

8.4.2 DaoAuthenticationProvider的實現

8.4.3 讀取資料庫用戶信息

8.4.4 完成用戶信息的對比驗證

8.5 ACEGI授權器的實現

8.5.1 與Web環境的接口FilterSecurityInterceptor

8.5.2 授權器的實現

8.5.3 投票器的實現

8.6 小結

第9章 Spring DM模組的設計與實現

9.1 Spring DM模組的套用場景

9.2 Spring DM的套用過程

9.3 Spring DM設計與實現

9.4 小結

第10章 Spring Flex的設計與實現

10.1 Spring Flex模組的套用場景

10.2 Spring Flex的套用過程

10.3 Spring Flex的設計與實現

10.4 小結

附錄A Spring項目的原始碼環境

附錄B 構建Spring項目的發布包

附錄C 使用Spring IDE

附錄D Spring Pet Clinic套用實例

相關詞條

相關搜尋

熱門詞條

聯絡我們