内容简介:
本书是Spring领域的问鼎之作,由业界拥有10余年开发经验的资深Java专家亲自执笔!Java开发者社区和Spring开发者社区一致强烈推荐。
国内第一本基于Spring3.0的著作,从源代码的角度对Spring的内核和各个主要功能模块的架构、设计和实现原理进行了深入剖析。你不仅能从木书中参透Spring框架的优秀架构和设计思想,而且还能从Spring优雅的实现源码中一窥Java语言的精髓。此外,本书还展示了阅读源代码的卓越方法,不仅授你以鱼,而且还授你以渔!
如果你以一种淡定的心态翻开这本书,无论你是Java程序员、Spring开发者,还是平台开发人员、系统架构师,抑或是对开源软件源代码着迷的代码狂人,都能从本书中受益。
本书特色:
作者从业10余载,悟透Spring等开源软件的本质,权威性毋庸置疑。
Java开发者社区、专业Spring开发者社区和架构师社区一致鼎力推荐!
深入解析Spring架构原理与设计思想,探究Spring成功的奥秘。
揭开Spring源代码的神秘面纱,展示系统阅读开源软件源代码的方法和秘诀。
如果你也在思考下面的问题,本书也许就是你想要的:
掌握Spring的架构原理与设计思想真的能让开发者如虎添翼吗?
IoC容器如何掌控以POJO为基础的Bean对象?它的轻量级开发设计思想是如何实现的?
Spring产品级的IoC容器是如何作为一个完整的系统实现并运行的?它如何启动?如何完成Bean的解析和载入?又如何实现Bean的生命周期管理?
Spring如何简捷地在JVM上实现AOP功能?
Spring AOP如何实现Aspect编织功能?
Spring如何实现各种数据库操作组件的集成?
Spring如何在Web环境中集成IoC容器并为Web应用开发提供利器?
我们耳熟能详的MVC模式在Spring中是如何实现的?
Spring MVC如何灵活地集成各种丰富的视图展现方案?
Spring实现远端调用的方案有很多种,你知道它们之间的优劣差异吗?
Spring ACEGI安全框架在用户验证和授权机制的实现上有何过人之处?
如何在Spring的基础上进行扩展开发?
你是否曾经也有过分析开源软件源代码的冲动?你想掌握分析源代码的最佳实践吗?...
本书赞誉:
作为一个有近10年历史的成功框架,Spnng在Java开发中具有举足轻重的作用。本书从源代码分析入手,对Spring的架构原理和设计思想进行了全面剖析,不仅能让我们更深入、更彻底地认识Spring,领略Spring的架构之美和设计之美,而且更重要的是,它将全面提升我们的Spring开发技能。.
——Spring开发者社区
这是值得所有Spnng开发者反复研读的一本书。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.5Spring源代码的组织结构 10
1.6小结 12
第一部分Spring核心实现篇
第2章Spring Framework的核心:IoC容器的实现 16
2.1Spring IoC容器概述 16
2.1.1IoC容器和依赖反转模式 16
2.1.2Spring的IoC容器系列 18
2.2IoC容器系列的实现:BeanFactory 和ApplicationContext 20
2.2.1BeanFactory对IoC容器的功能定义 20
2.2.2IoC容器XmlBeanFactory的工作原理 22
2.2.3ApplicationContext的特点 24
2.3IoC容器的初始化 25
2.3.1BeanDefinition的Resource定位 26
2.3.2BeanDefinition的载入和解析 33
2.3.3BeanDefinition在IoC容器中的注册 47
2.4IoC容器的依赖注入 49
2.5容器其他相关特性的实现 70
2.5.1lazy-init属性和预实例化 70
2.5.2FactoryBean的实现 73
2.5.3BeanPostProcessor的实现 75
2.5.4autowiring的实现原理 78
2.6小结 80
第3章Spring AOP的实现 82
3.1Spring AOP概述 82
3.1.1AOP概念回顾 82
3.1.2Advice通知 84
3.1.3Pointcut切点 88
3.1.4Advisor通知器 90
3.2建立AopProxy代理对象 92
3.2.1配置ProxyFactoryBean 92
3.2.2ProxyFactoryBean生成AopProxy 94
3.2.3JDK生成AopProxy代理对象 98
3.2.4CGLIB生成AopProxy代理对象 99
3.3Spring AOP拦截器调用的实现 101
3.3.1JdkDynamicAopProxy的invoke拦截 101
3.3.2Cglib2AopProxy的intercept拦截 103
3.3.3目标对象方法的调用 105
3.3.4AOP拦截器链的调用 105
3.3.5配置通知器 107
3.3.6Advice通知的实现 112
3.3.7ProxyFactory实现AOP 118
3.4Spring AOP的高级特性 120
3.5小结 121
第二部分Spring组件实现篇
第4章Spring MVC与Web环境.. 127
4.1概述 127
4.2Web环境中的Spring MVC 128
4.3IoC容器在Spring MVC中的启动 130
4.3.1Web容器中的上下文 130
4.3.2ContextLoader建立Web环境的根上下文 132
4.4Spring Web MVC的启动 136
4.4.1DispacherServlet概述 136
4.4.2DispacherServlet的启动和初始化 137
4.5Spring MVC的实现 141
4.5.1DispatcherSevlet的MVC初始化 141
4.5.2HandlerMapping的配置 143
4.5.3使用HandlerMapping完成请求的映射处理 148
4.5.4Spring MVC对HTTP请求的分发处理 150
4.6Spring MVC视图的呈现 155
4.6.1DispatcherServlet视图呈现概述 155
4.6.2JSP视图的实现 157
4.6.3ExcelView的实现 160
4.6.4PDF视图的实现 163
4.7小结 165
第5章数据库操作组件的实现 167
5.1Spring JDBC和Spring ORM概述 167
5.2Spring JDBC模板类的实现 167
5.2.1JdbcTeamplate的基本使用 167
5.2.2JdbcTemplate的execute实现 168
5.2.3JdbcTemplate的query实现 170
5.2.4使用数据库Connection 171
5.3Spring JDBC中RDBMS操作对象的实现 172
5.3.1SqlQuery的实现 173
5.3.2SqlUpdate的实现 177
5.3.3SqlFunction 178
5.4Spring驱动Hibernate的实现 179
5.4.1配置Hibernate的SessionFactory 180
5.4.2HibernateTemplate的实现 185
5.4.3Session的管理 187
5.5Spring驱动iBatis的实现 190
5.5.1创建SqlMapClient 190
5.5.2SqlMapClientTemplate的实现 192
5.6小结 194
第6章Spring事务处理的实现 196
6.1Spring与事务处理 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.1DataSourceTransactionManager的实现 219
6.5.2HibernateTransactionManager的实现 222
6.6小结 227
第7章Spring远端调用的 实现 230
7.1Spring远端调用概述 230
7.2Spring HTTP 调用器的实现原理 232
7.2.1配置HTTP调用器客户端 232
7.2.2HTTP调用器客户端的实现 232
7.2.3配置HTTP调用器远端服务器端 237
7.2.4HTTP调用器服务器端的实现 237
7.3Spring Hession/Burlap的实现 原理 241
7.3.1Hessian/Burlap客户端的配置 241
7.3.2Hessian客户端的实现 242
7.3.3Burlap客户端的实现 244
7.3.4Hessian/Burlap服务器端的配置 247
7.3.5Hessian服务器端的实现 247
7.3.6Burlap服务器端的实现 250
7.4Spring RMI的实现 252
7.4.1Spring RMI客户端的配置 252
7.4.2Spring RMI客户端的实现 253
7.4.3Spring RMI服务器端的配置 256
7.4.4Spring RMI服务器端的实现 257
7.5小结 259
第8章安全框架ACEGI的 实现 260
8.1Spring ACEGI安全框架概述 260
8.1.1概述 260
8.1.2使用Spring IDE 261
8.1.3ACEGI的Bean配置 263
8.2配置Spring ACEGI 264
8.3ACEGI的Web过滤器实现 267
8.4ACEGI验证器的实现 269
8.4.1AuthenticationManager的authenticate 269
8.4.2DaoAuthenticationProvider的实现 271
8.4.3读取数据库用户信息 273
8.4.4完成用户信息的对比验证 276
8.5ACEGI授权器的实现 277
8.5.1与Web环境的接口FilterSecurityInterceptor 277
8.5.2授权器的实现 280
8.5.3投票器的实现 282
8.6小结 283
第三部分Spring应用篇
第9章Spring petclinic应用实例 287
9.1petclinic概述 287
9.2部署环境及数据库 289
9.3petclinic的Bean配置 290
9.4petclinic的Web页面实现 291
9.5petclinic的领域对象实现 293
9.6petclinic数据库操作的实现 294
9.6.1使用JDBC的数据库操作 294
9.6.2使用Hibernate的数据库操作 295
9.6.3使用JPA的数据库操作 297
9.7小结 298
ActionScript3.0是Flash编程语言的一次重大升级,它更加高效、清晰和完善。《ActionScript3.0基础教程》详细地介绍了ActionSc...
《智慧党建》内容简介:本书首先阐述了党委信息化,指出领导干部要强化信息化思维、提高数字领导力,分析了数字党建的内涵、意义和
Devicedriversliterallydriveeverythingyoureinterestedin--disks,monitors,keyboards...
《科特迪瓦(第2版)》内容简介:科特迪瓦位于非洲大陆西部,南邻大西洋几内亚港湾。这里有西非第一大港口,也是内陆国家马里和布基
全国计算机等级考试二级教程.C语言程序设计:2010年版 内容简介 本书根据教育部考试中心制定的《全国计算机等级考试二级c语言程序设计考试大纲(2007年版)》...
《AdobeFlashCatalystCS5交互设计大师之路(全彩)》内容简介:FlashCatalyst就像是设计与开发人员之间的一座桥梁,它可以让设计者
ARM嵌入式应用技术基础 本书特色 本书与《ARM嵌入式接口技术应用》、《ARM嵌入式应用实战》组成一个小系列,是以ARM7内核处理器和uC/OS.Ⅱ嵌入式操作...
《超越:上海交通大学ACM班廿年逐梦路》内容简介:本书是上海交通大学ACM班成立二十周年庆典之际,由这二十年中发生在校友身上的,
《明代文学思想史(全二册)》内容简介:《明代文学思想史》是对整个明代的文学思想进行系统阐述的专著。明代是一个文学思想相当活
本书介绍社会工程实践中的基本技能——如何了解别人真正想表达的内容,具体内容包括:非语言交流是如何运作的,手部、躯干、腿脚
《Web程序设计(第6版)》浓墨重彩地描述客户端和服务器端Web开发技术,深入分析Web站点构造和维护工具,并透彻讲解主流Web编程语言。
《网旋风:Animate动画广告创意直播》内容简介:随着互联网时代的发展,互联网上的广告也逐渐发展起来,网络广告课程随之成为各大高
“赢在京东”系列电商教程是京东官方认证用书,由一线业务精英和权威专家团队出品的电商读物,将不断分享京东发展过程中的优势资
Thisisahands-onbookwhichintroducesyoutoagileJavaScriptwebandmobilesoftwaredevelo...
本书系统地介绍了计算机视觉方面的基础知识,详细讨论了从图像自动抽取重要信息的相关理论,内容包括最近出现的研究成果。本书取
主编:海军超过十五年设计管理研究、咨询和实践经验。参与和主持过设计政策、设计产业规划、区域创新、新产品开发、设计组织与设
《做自己人生的CEO》内容简介:她从爱哭的职场小白到年轻CEO,只用了6年 她懂得“管理老板”,曾是财经大咖吴晓波器重的左膀右臂 对
《法国通史》内容简介:本书系《世界历史文化丛书》之一种书。法兰西人的习性经久不变,以至于在两三千年前人们为其勾画的肖像中,
Cryptographyplaysakeyroleinensuringtheprivacyandintegrityofdataandthesecurityofc...
《禅思与诗情(增订本)》内容简介:第一、二章分别介绍达摩禅法和东山法门以及南宗禅后,第三章选取王维、杜甫两个重点人物进行分