《Spring Internals》,Spring 技术内幕,深入解析Spring架构与设计原理,计文柯著,机械工业出版社,2011年1月出版。
这是一本讲解 Spring 3.0 源码的书,作为Java生态中这个最基础的框架,其框架设计,对底层技术的应用,对其他技术的整合,都必然有让我们学习的地方;当然也肯定有繁杂之处,或者有过度设计的地方;如果有兴趣,有时间,可以集合源码看看这本书,对于加深对于Spring的理解,还是很有好处的。
曾经花1周的时间,结合Spring源码,大致翻了一下这本书的第一部分,Spring核心实现篇(IoC和AOP),也迸出了一个想法:一切Java生态的开源框架,都是JDK、数据结构、设计模式和算法。
另外一本偏向实战的书:http://blog.csdn.net/puma_dong/article/details/47917461
1.1 安装 JDK
1.2 安装 Eclipse
1.3 安装辅助工具
1.4 获取 Spring 源代码
1.5 Spring 源代码的组织结构
1.6 小结
2.1 Spring IoC 容器概述
IoC 容器和依赖反转模式
Spring 的 IoC 容器系列
2.2 IoC容器系列的实现:BeanFactory和ApplicationContext
BeanFactory 对 IoC 容器的功能定义
IoC 容器 XmlBeanFactory 的工作原理
ApplicationContext 的特点
2.3 IoC 容器的初始化
BeanDefinition 的 Resource 定位
BeanDefinition 的载入和解析
BeanDefinition 在 IoC 容器中的注册
2.4 IoC 容器的依赖注入
2.5 容器其他相关特性的实现
lazy-init 属性和预实例化
FactoryBean 的实现
BeanPostProcessor 的实现
autowiring 的实现原理
2.6 小结
3.1 Spring AOP 概述
AOP 概念回顾
Advice 通知
Pointcut 切点
Advisor 通知器
3.2 建立 AopProxy 代理对象
配置 ProxyFactoryBean
ProxyFactoryBean 生成 AopProxy
JDK 生成 AopProxy 代理对象
CGLIB 生成 AopProxy 代理对象
3.3 Spring AOP 拦截器调用的实现
JdkDynamicAopProxy 的 invoke 拦截
Cglib2AopProxy 的 intercept 拦截
目标对象方法的调用
AOP 拦截器链的调用
配置通知器
Advice 通知的实现
ProxyFactory 实现 AOP
3.4 Spring AOP 的高级特性
3.5 小结
4.1 概述
4.2 Web 环境中的 Spring MVC
4.3 IoC 容器在 Spring MVC 中的启动
Web 容器中的上下文
ContextLoader 建立 Web 环境的根上下文
4.4 Spring Web MVC 的启动
DispatcherServlet 概述
DispatcherServlet 的启动和初始化
4.5 Spring MVC 的实现
DispatcherServlet 的 MVC 初始化
HandlerMapping 的配置
使用 HandlerMapping 完成请求的映射处理
Spring MVC 对 HTTP 请求的分发处理
4.6 Spring MVC 视图的呈现
DispatcherServlet 视图呈现概述
JSP 视图的实现
ExcelView的实现
PDF 视图的实现
4.7 小结
5.1 Spring JDBC 和 Spring ORM 概述
5.2 Spring JDBC 模板类的实现
JdbcTemplate 的基本使用
JdbcTemplate 的 execute 实现
JdbcTemplate 的 query 实现
使用数据库 Connection
5.3 Spring JDBC 中 RDBMS 操作对象的实现
SqlQuery 的实现
SqlUpdate 的实现
SqlFunction 的实现
5.4 Spring 驱动 Hibernate 的实现
配置 Hibernate 的SessionFactory
HibernateTemplate 的实现
Session 的管理
5.5 Spring 驱动 iBatis 的实现
创建 SqlMapClient
SqlMapClientTemplate 的实现
5.6 小结
6.1 Spring 与事务处理
6.2 声明式事务处理的基本过程
事务处理拦截器的配置
事务处理配置的读入
6.3 事务处理拦截器的实现
6.4 事务处理的实现
事务处理的编程式使用
事务的创建
事务的挂起
事务的提交
事务的回滚
6.5 具体事务处理器的实现
DataSourceTransactionManager 的实现
HibernateTransactionManaber 的实现
6.6 小结
7.1 Spring 远端调用概述
7.2 Spring HTTP 调用器的实现原理
配置 HTTP 调用器客户端
HTTP 调用器客户端的实现
配置 HTTP 调用器远端服务器端
HTTP 调用器服务器端的实现
7.3 Spring Hession/Burlap 的实现原理
Hession/Burlap 客户端的配置
Hession 客户端的实现
Burlap 客户端的实现
Hession/Burlap 服务器端的配置
Hession 服务器端的实现
Burlap 服务器端的实现
7.4 Spring RMI 的实现
Spring RMI 客户端的配置
Spring RMI 客户端的实现
Spring RMI 服务器端的配置
Spring RMI 服务器端的实现
7.5 小结
8.1 Spring ACEGI 安全框架概述
概述
使用 Spring IDE
ACEGI 的 Bean 配置
8.2 配置 Spring ACEGI
8.3 ACEGI 的 Web 过滤器实现
8.4 ACEGI 验证器的实现
AuthenticationManager 的authenticate
DaoAuthenticationProvider 的实现
读取数据库用户信息
完成用户信息的对比验证
8.5 ACEGI 授权器的实现
与 Web 环境的接口 FilterSecurityInterceptor
授权器的实现
投票器的实现
8.6 小结
9.1 petclinic 概述
9.2 部署环境及数据库
9.3 petclinic 的 Bean 配置
9.4 petclinic 的 Web 页面实现
9.5 petclinic 的领域对象实现
9.6 petclinic 数据库操作的实现
使用 JDBC 的数据库操作
使用 Hibernate 的数据库操作
使用 JPA 的数据库操作
9.7 小结