内容简介:
本书是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
《社群营销与运营实战手册》内容简介:社群经济的崛起极大地改变了现有的商业模式,“网红”、社交电商、新零售等新兴模式使社群的
JenniferHudsonJenniferHudsonisanauthorinthefieldsofcontemporarydesignandarchitec...
《机械修理工艺与技能训练》内容简介:该课程主要介绍了设备修理的基本知识,通用零件的故障诊断与修理;减速器的故障诊断与修理;
《魔兽世界编程宝典:WorldofWarcraftAddons完全参考手册》可以为以下对象提供帮助:希望学习如何修改已有插件的新手插件用户,希
《苏青散文》内容简介:本书是民国才女苏青散文精选集。内容分两辑,第一辑收入叙写生活的散文,第二辑是关于家庭、工作、女子道德
《卡通IP时代:品牌卡通形象设计揭秘(第3版·修订版)》内容简介:大IP时代就要来临了,那么到底什么是设计行业的大IP?本书就IP设
《生活之美》内容简介:《生活之美》中国社会科学院研究员、知名美学专家刘悦笛对中国生活美学的赏析解读。“生活美学”中蕴含着华
《大数据架构和算法实现之路》内容简介:本书介绍了一些主流技术在商业项目中的应用,包括机器学习中的分类、聚类和线性回归,搜索
《穿透心智:企业战略定位实践方法》内容简介:当前,世界经济下行、商业环境发生巨变,从工厂时代到市场时代,再到过剩经济的时代
"Readerssearchingforawiderangingandup-to-dateviewoffibreopticcommunicationsystem...
《这里是故宫》内容简介:只露声音的宫殿君称得上是行走的“故宫资料库”,他以特别“接地气”的方式讲述故宫的建筑黑科技、超级神
学习GNUEmacsGNUEmacs是Emacs编辑器家族中最受欢迎、传播范围最广、也是最强大和最灵活的UNIX文本编辑器。与其他文本编辑器的重要
《室内设计师专用协调色搭配手册》内容简介:使房间显得宽敞的秘诀是什么?就像许多室内设计师会告诉你的那样:使用协调色。《室
《Office 2010办公自动化培训教程》内容简介:本书以Office 2010版本为基础,结合实际工作中各种办公文档的制作,系统地讲述了Offi
《RocketMQ技术内幕》内容简介:这是一本指导读者如何在实践中让RocketMQ实现低延迟、高并发、高可用、高可靠的著作。作者是Rocket
1997年5月11日,全世界数百万人通过电视观看了一场惊人的胜利——一台计算机战胜了欲捍卫世界冠军称号的卡斯帕罗夫,此举震惊了国
网络资源下载 内容简介 本书主要内容包括:概述,QQ旋风,网际快车,迅雷,BT下载,电驴下载,下载软件对比测评。网络资源下载 目录 **章 概述一、基本知识1....
本书是提高网站搜索可用性的红宝书,它将SEO和Web可用性两个不同领域的知识融会贯通,详细阐述了用户的各种搜索行为和行为背后的
《清朝经营海南黎族研究》内容简介:本书稿将清朝各代皇帝经营黎族的背景、经过、主要举措、战略思考、历史作用与得失等作为研究内
《人生怎可安闲》内容简介:人在世间行走,不可孤芳自赏,亦不必委曲求全。山水虽无价,也不必谁人赐予四季风景。只要心有思慕,便