前言
Spring MVC 人门很简单,但是要想真正使用好却并非易事,而且现在也没有全面、深入的使用资料,以致在实际使用的过程中程序员经常会遇到各种各样的问题而不知道如!何解决。对Spring MVC这样的开源项目来说,最好的学习方法当然是分析它的源代码,分析透源代码不仅可以让我们更灵活地使用Spring MVC来开发高质量的产品,而且可以学习到其中的很多优秀的编程技巧和设计理念。
关于《SpringMVC源代码分析与实践》这份PDF我这边只列举了其中的目录还有部分知识点的部分截图,由于这份PDF太大了,为了不影响观看所以只能列举了一部分。需要的可以关注公众号“有故事的程序员”获取这份PDF
目录:
第一篇第一章:网站架构及其演变过程
1.1软件的三大类型
1.2基础的结构并不简单
1.3架构演变的起点
1.4 海量数据的解决方案
1.4.1缓存和页面静态化
1.4.2数据库优化
1.4.3分离活跃数据
1.4.4批量读取和延迟修改
1.4.5读写分离
1.4.6分布式数据库
1.4.7 NoSQL和Hadoop
1.5高并发的解决方案
1.5.1应用和静态资源分离
1.5.2页面缓存
1.5.3集群与分布式
1.5.4反向代理
1.5.5 CDN
1.6底层的优化
1.7小结
第2章常见协议和标准
2.1 DNS协议
2.2 TCP/IP协议与Socket
2.3 HTTP协议
2.4 Servlet与Java Web开发
第3章DNS的设置
3.1 DNS解析
3.2 Windows 7设置DNS服务器
3.3 Windows设置本机域名和IP的对应关系
第4章Java 中Socket的用法
4.1普通Socket的用法
4.2NioSocket的用法
第5章自己动手实现HTTP协议
第6章详解Servlet
6.1 Servlet接口
6.2 GenerieServlet
6.3 HttpServlet
第7章Tomcat分析
7.1 Tomcat的顶层结构及启动过程
7.1.1 Tomcat的顶层结构
7.1.2 Bootstrap的启动过程
7.1.3 Catalina的启动过程
7.1.4 Server的启动过程
7.1.5 Service的启动过程
7.2 Tomcat的生命周期管理
7.2.1 Lifecycle接口
7.2.2 LifecycleBase
7.3 Container分析
7.3.1 ContainerBase的结构
7.3.2 Container的4个子容器
7.3.34种容器的配置方法
7.3.4 Container的启动
7.4Pipeline-Value管道
7.4.1 Pipeline-Value处理模式
7.4.2 Pipeline-Value的实现方法
7.5 Connector分析
7.5.1 Connector的结构
7.5.2 Connector自身类
7.5.3 ProtocolHandler
7.5.4处理TCP/IP协议的Endpoint
7.5.5处理HTTP协议的Processor
7.5.6适配器Adapter
第二篇俯视Spring MVC
第8章Spring MVC之初体验
8.1环境搭建
8.2 Spring MVC最简单的配置
8.2.1在web.xml中配置Servlet
8.2.2创建Spring MVC的xmⅠ配置文件
8.2.3创建Controller和view
8.3关联spring源代码
8.4小结
第9章创建Spring MVC之器
9.1整体结构介绍
9.2 HttpServletBean
9 3 FrameworkServle
t9.4 DispatcherServlet
9.5小结
第10章Spring MVC之用
10.1 HttpServletBean
10.2FrameworkServlet
10.3 DispatcherServlet
10.4 doDispatch结构
10.5小结
第三篇Spring MVC组件分析
第11章组件概览
11.1 HandlerMapping
11.2 HandlerAdapter
11.3 HandlerExceptionResolver
11.4 ViewResolver
11.5 RequestToViewNameTranslator
11.6 LocaleResolver
11.7 ThemeResolver
11.8 MultipartResolver
11.9 FlashMapManager
11.10小结
第12章HandlerMapping
12.1 AbstractHandlerMapping
12.1.1创建AbstractHandlerMapping之器
12.1.2 AbstractHandlerMapping之用
12.2 AbstractUrlHandlerMapping系列
12.2.1 AbstractUrlHandlerMapping
12.2.2SimpleUrlHandlerMapping
12.2.3 AbstractDetectingUrlHandler-Mapping
12.3 AbstractHandlerMethodMapping系列
12.3.1创建AbstractHandlerMethod-Mapping系列之器
12.3.2 AbstractHandlerMethodMapping系列之用
12.4小结
第13章HandlerAdapter
13.1 RequestMappingHandlerAdapter概述
13.2 RequestMappingHandlerAdapter自身结构
13.2.1创建RequestMappingHandler-Adapter之器
13.2.2 RequestMappingHandlerAdapter之用
13.2.3小结
13.3 ModelAndViewContainer
13.4 SessionAttributesHandler和SessionAttributeStore
13.5 ModelFactory
13.5.1初始化Model
13.5.2更新Model
13.6 ServletlnvocableHandlerMethod
13.6.1 HandlerMethod
13.6.2 InvocableHandlerMethod
13.6.3 ServletlnvocableHandler-Method
13.7 HandlerMethodArgumentResolver
13.8 HandlerMethodReturnvalue-Handler
13.9小结
第14章ViewResolver
14.1 ContentNegotiatingViewResolver
14.2 AbstractCachingViewResolver系列UrlBasedViewResolver
14.3小结
第15章RequestToviewName-Translator
第16章HandlerExceptionResolver
16.1 AbstractHandlerException-Resolver
16.2 ExceptionHandlerException-Resolver
16.3 DefaultHandlerExceptionResolver
16.4 ResponseStatusExceptionResolver
16.5SimpleMappingExceptionResolver
16.6小结
第17章MultipartResolver
17.1 StandardServletMultipart-Resolver
17.2 CommonsMultipartResolver
17.3小结
第18章LocaleResolver
第19章ThemeResolver
第20章FlashMapManager
第四篇总结与补充
第21章总结
21.1 Spring MVC原理总结
21.2实际跟踪一个请求
第22章异步请求
22.1 Servlet 3.0对异步请求的支持
22.1.1 Servlet3.0处理异步请求实例
22.1.2异步请求监听器Async-Listener
22.2 Spring MVC中的异步请求
22.2.1 SpringMVC中异步请求相关组件
22.2.2 Spring MVC对异步请求的支持
22.2.3 WebAsyncTask和Callable类型异步请求的处理过程及用法
22.2.4 DeferredResult类型异步请求的处理过程及用法
22.2.5 ListenableFuture类型异步请求的处理过程及用法
22.3小结
获取这份《SpringMVC源代码分析与实践》的方式,需要的可以关注公众号“有故事的程序员”获取这份PDF