现在的位置: 首页 > 综合 > 正文

书讯:《Spring技术内幕——深入解析Spring架构与设计原理》

2013年10月06日 ⁄ 综合 ⁄ 共 5163字 ⁄ 字号 评论关闭

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

 

抱歉!评论已关闭.