書訊:《Spring技術內幕——深入解析Spring架構與設計原理》
Spring技術內幕——深入解析Spring架構與設計原理
作者:計文柯
ISBN:9787111288060
叢書名:揭祕系列叢書
出版社:機械工業出版社
出版日期:2010 年1月
開本:16
頁碼:300
版次:1-1
定價:55元
豆瓣網討論地址:http://www.douban.com/subject/4199483/
China-pub預訂地址:http://www.china-pub.com/196261
圖 書 內 容
本書是Spring領域的問鼎之作,由業界擁有10餘年開發經驗的資深Java專家親自執筆!Java開發者社群和Spring開發者社群一致強烈推薦。
國內第一本基於Spring 3.0的著作,從原始碼的角度對Spring的核心和各個主要功能模組的架構、設計和實現原理進行了深入剖析。你不僅能從本書中參透Spring框架的優秀架構和設計思想,而且還能從Spring優雅的實現原始碼中一窺Java語言的精髓。此外,本書還展示了閱讀原始碼的卓越方法,不僅授你以魚,而且還授你以漁!
如果你以一種淡定的心態翻開這本書,無論你是Java程式設計師、Spring開發者,還是平臺開發人員、系統架構師,抑或是對開源軟體原始碼著迷的程式碼狂人,都能從本書中受益。
本 書 贊 譽
作為一個有近10年曆史的成功框架,Spring在Java開發中具有舉足輕重的作用。本書從原始碼分析入手,對Spring的架構原理和設計思想進行了全面剖析,不僅能讓我們更深入、更徹底地認識Spring,領略Spring的架構之美和設計之美,而且更重要的是,它將全面提升我們的Spring開發技能。
——Spring開發者社群
這是值得所有Spring開發者反覆研讀的一本書。Spring是一個優秀的輕量級企業應用開發框架,是Java開發中最流行的工具之一,也是Java程式設計師必須熟練掌握的一門技術之一。本書從Spring實現原理的角度揭開了Spring的神祕面紗,使得我們在利用Spring進行開發時,不僅能知其然,還能知其所以然,從本質上提升我們對Spring的理解和開發水平。
——Spring中文使用者組
這是所有Java程式設計師應該認真閱讀的一本書。Spring框架主要是用Java語言來實現的,本書對大量經典的、優雅的Spring實現程式碼進行了賞析,不禁讓我們感慨Rod Johnson(Spring之父)對Java語言的運用之精妙。如果能跟隨本書穿越Spring原始碼的叢林,也許我們對Java語言的理解和掌握將會有質的飛躍。
——中文Java技術網
這是所有軟體架構師必備的一本書。成為一名出色的軟體架構師,也許是每一位開發者的夢想。在成長為架構師的過程中,在實踐中積累並總結經驗固然很重要,但是從現有的成功架構中取經也是必不可少的。本書對Spring的各個功能模組的架構原理和設計思想進行了深入剖析,值得所有架構師用心體會和研究,必將受益匪淺。
——架構師中國
目 錄
本書讚譽
前 言
致 謝
第1章 準備原始碼環境 1
1.1 安裝JDK 1
1.2 安裝Eclipse 1
1.3 安裝輔助工具 2
1.4 獲取Spring原始碼 8
1.5 Spring原始碼的組織結構 10
1.6 小結 12
第一部分 Spring核心實現篇
第2章 Spring Framework的核心:IoC容器的實現 16
2.1 Spring IoC容器概述 16
2.1.1 IoC容器和依賴反轉模式 16
2.1.2 Spring的IoC容器系列 18
2.2 IoC容器系列的實現:BeanFactory和ApplicationContext 20
2.2.1 BeanFactory對IoC容器的功能定義 20
2.2.2 IoC容器XmlBeanFactory的工作原理 22
2.2.3 ApplicationContext的特點 24
2.3 IoC容器的初始化 25
2.3.1 BeanDefinition的Resource定位 26
2.3.2 BeanDefinition的載入和解析 33
2.3.3 BeanDefinition在IoC容器中的註冊 47
2.4 IoC容器的依賴注入 49
2.5 容器其他相關特性的實現 70
2.5.1 lazy-init屬性和預例項化 70
2.5.2 FactoryBean的實現 73
2.5.3 BeanPostProcessor的實現 75
2.5.4 autowiring的實現原理 78
2.6 小結 80
第3章 Spring AOP的實現 82
3.1 Spring AOP概述 82
3.1.1 AOP概念回顧 82
3.1.2 Advice通知 84
3.1.3 Pointcut切點 88
3.1.4 Advisor通知器 90
3.2 建立AopProxy代理物件 92
3.2.1 配置ProxyFactoryBean 92
3.2.2 ProxyFactoryBean生成AopProxy 94
3.2.3 JDK生成AopProxy代理物件 98
3.2.4 CGLIB生成AopProxy代理物件 99
3.3 Spring AOP攔截器呼叫的實現 101
3.3.1 JdkDynamicAopProxy的invoke攔截 101
3.3.2 Cglib2AopProxy的intercept攔截 103
3.3.3 目標物件方法的呼叫 105
3.3.4 AOP攔截器鏈的呼叫 105
3.3.5 配置通知器 107
3.3.6 Advice通知的實現 112
3.3.7 ProxyFactory實現AOP 118
3.4 Spring AOP的高階特性 120
3.5 小結 121
第二部分 Spring元件實現篇
第4章 Spring MVC與Web環境 127
4.1 概述 127
4.2 Web環境中的Spring MVC 128
4.3 IoC容器在Spring MVC中的啟動 130
4.3.1 Web容器中的上下文 130
4.3.2 ContextLoader建立Web環境的根上下文 132
4.4 Spring Web MVC的啟動 136
4.4.1 DispacherServlet概述 136
4.4.2 DispacherServlet的啟動和初始化 137
4.5 Spring MVC的實現 141
4.5.1 DispatcherSevlet的MVC初始化 141
4.5.2 HandlerMapping的配置 143
4.5.3 使用HandlerMapping完成請求的對映處理 148
4.5.4 Spring MVC對HTTP請求的分發處理 150
4.6 Spring MVC檢視的呈現 155
4.6.1 DispatcherServlet檢視呈現概述 155
4.6.2 JSP檢視的實現 157
4.6.3 ExcelView的實現 160
4.6.4 PDF檢視的實現 163
4.7 小結 165
第5章 資料庫操作元件的實現 167
5.1 Spring JDBC和Spring ORM概述 167
5.2 Spring JDBC模板類的實現 167
5.2.1 JdbcTeamplate的基本使用 167
5.2.2 JdbcTemplate的execute實現 168
5.2.3 JdbcTemplate的query實現 170
5.2.4 使用資料庫Connection 171
5.3 Spring JDBC中RDBMS操作物件的實現 172
5.3.1 SqlQuery的實現 173
5.3.2 SqlUpdate的實現 177
5.3.3 SqlFunction 178
5.4 Spring驅動Hibernate的實現 179
5.4.1 配置Hibernate的SessionFactory 180
5.4.2 HibernateTemplate的實現 185
5.4.3 Session的管理 187
5.5 Spring驅動iBatis的實現 190
5.5.1 建立SqlMapClient 190
5.5.2 SqlMapClientTemplate的實現 192
5.6 小結 194
第6章 Spring事務處理的實現 196
6.1 Spring與事務處理 196
6.2 宣告式事務處理的基本過程 196
6.2.1 事務處理攔截器的配置 197
6.2.2 事務處理配置的讀入 200
6.3 事務處理攔截器的實現 203
6.4 事務處理的實現 206
6.4.1 事務處理的程式設計式使用 206
6.4.2 事務的建立 207
6.4.3 事務的掛起 214
6.4.4 事務的提交 215
6.4.5 事務的回滾 218
6.5 具體事務處理器的實現 219
6.5.1 DataSourceTransactionManager的實現 219
6.5.2 HibernateTransactionManager的實現 222
6.6 小結 227
第7章 Spring遠端呼叫的實現 230
7.1 Spring遠端呼叫概述 230
7.2 Spring HTTP 呼叫器的實現原理 232
7.2.1 配置HTTP呼叫器客戶端 232
7.2.2 HTTP呼叫器客戶端的實現 232
7.2.3 配置HTTP呼叫器遠端伺服器端 237
7.2.4 HTTP呼叫器伺服器端的實現 237
7.3 Spring Hession/Burlap的實現 原理 241
7.3.1 Hessian/Burlap客戶端的配置 241
7.3.2 Hessian客戶端的實現 242
7.3.3 Burlap客戶端的實現 244
7.3.4 Hessian/Burlap伺服器端的配置 247
7.3.5 Hessian伺服器端的實現 247
7.3.6 Burlap伺服器端的實現 250
7.4 Spring RMI的實現 252
7.4.1 Spring RMI客戶端的配置 252
7.4.2 Spring RMI客戶端的實現 253
7.4.3 Spring RMI伺服器端的配置 256
7.4.4 Spring RMI伺服器端的實現 257
7.5 小結 259
第8章 安全框架ACEGI的實現 260
8.1 Spring ACEGI安全框架概述 260
8.1.1 概述 260
8.1.2 使用Spring IDE 261
8.1.3 ACEGI的Bean配置 263
8.2 配置Spring ACEGI 264
8.3 ACEGI的Web過濾器實現 267
8.4 ACEGI驗證器的實現 269
8.4.1 AuthenticationManager的authenticate 269
8.4.2 DaoAuthenticationProvider的實現 271
8.4.3 讀取資料庫使用者資訊 273
8.4.4 完成使用者資訊的對比驗證 276
8.5 ACEGI授權器的實現 277
8.5.1 與Web環境的介面FilterSecurityInterceptor 277
8.5.2 授權器的實現 280
8.5.3 投票器的實現 282
8.6 小結 283
第三部分 Spring應用篇
第9章 Spring petclinic應用例項 287
9.1 petclinic概述 287
9.2 部署環境及資料庫 289
9.3 petclinic的Bean配置 290
9.4 petclinic的Web頁面實現 291
9.5 petclinic的領域物件實現 293
9.6 petclinic資料庫操作的實現 294
9.6.1 使用JDBC的資料庫操作 294
9.6.2 使用Hibernate的資料庫操作 295
9.6.3 使用JPA的資料庫操作 297
9.7 小結 298
相關文章
- Hadoop技術內幕:深入解析YARN架構設計與實現原理 附下載地址HadoopYarn架構
- 《Spring技術內幕》(1) 設計理念和整體架構Spring架構
- Spring技術內幕:設計理念和整體架構概述Spring架構
- Spring技術內幕筆記(2):Spring MVC 與 WebSpring筆記MVCWeb
- 簡述Spring技術內幕Spring
- 《spring技術內幕》讀書筆記3-AOP的實現Spring筆記
- 《RocketMQ技術內幕:RocketMQ架構設計與實現原理》—第1章閱讀原始碼前的準備MQ架構原始碼
- Java程式設計架構深入解析-RPC訊息協議設計Java程式設計架構RPC協議
- 讀書筆記 之《軟體架構設計: 大型網站技術架構與業務架構融合之道》筆記架構網站
- spring cloud微服務架構設計SpringCloud微服務架構
- 深入分析java web技術內幕JavaWeb
- 《深入分析JavaWeb技術內幕》之讀書筆記(篇三)JavaWeb筆記
- 深入高可用架構原理與實踐 書籍學習架構
- 《大型網站技術架構:核心原理與案例分析》讀書筆記網站架構筆記
- 【java深入學習第4章】精通 Java 微服務:Spring Boot 與 Spring Cloud 的核心技術與設計準則Java微服務Spring BootCloud
- Spring Cloud分散式微服務架構技術整理SpringCloud分散式微服務架構
- 《大型網站技術架構:核心原理與案例分析》讀書筆記 - 第2篇 架構網站架構筆記
- Tomcat 架構原理解析到架構設計借鑑Tomcat架構
- 微服務之架構技術選型與設計微服務架構
- 深入剖析全鏈路灰度技術內幕
- spring微服務架構設計與輕量級微服務架構及最佳部署Spring微服務架構
- Spring Cloud微服務-全棧技術與案例解析SpringCloud微服務全棧
- 《大型網站技術架構核心原理與案例分析》讀書筆記(二)網站架構筆記
- 《大型網站技術架構:核心原理與案例分析》讀書筆記系列網站架構筆記
- 《大型網站技術架構:核心原理與案例分析》讀書筆記 - 第4篇 架構師(附 大型網站架構技術一覽)網站架構筆記
- 阿里本地生活端智慧架構設計與技術探索阿里架構
- CynosDB技術詳解——架構設計架構
- 面試系列-Spring Cloud 的核心架構原理面試SpringCloud架構
- 新書推薦《Spring 2企業應用開發》和《深入解析Spring MVC與Web Flow》新書SpringMVCWeb
- 整合Spring Cloud微服務分散式雲架構技術點SpringCloud微服務分散式架構
- 深入理解spark之架構與原理Spark架構
- Spring Cloud微服務分散式雲架構 - 整合企業架構的技術點SpringCloud微服務分散式架構
- 30個類手寫Spring核心原理之Ioc頂層架構設計(2)Spring架構
- 深入HBase架構原理架構
- 深入理解TensorFlow架構設計與實現原理 3 :基礎概念架構
- RocketMQ架構原理解析(三):訊息索引MQ架構索引
- 深入分析Java Web技術內幕(修訂版)JavaWeb
- WebKit技術內幕WebKit