资源名称:看透springMvc源代码分析与实践

内容简介:

国内资深Web开发专家根据Spring MVC全新技术撰写,基于实际生产环境,从基础知识、源代码和实战3个维度对Spring MVC的结构和实现进行详细讲解

全面介绍Spring MVC的架构、原理、核心概念和操作,通过案例完整呈现Tomcat的实现,系统总结Spring MVC九大组件的处理以及常用的技巧和实践

在大型网站和复杂系统的开发中,Java具有天然的优势,而在Java的Web框架中Spring MVC以其强大的功能以及简单且灵活的用法受到越来越多开发者的青睐。本书不仅详细地分析Spring MVC的结构及其实现细节,而且讲解网站的不同架构及其演变的过程,以及网络底层协议的概念及其实现方法,帮助读者开发更高效的网站。

通过本书,你将:

系统学习网站的各种架构以及每种架构所针对的问题。

深入分析Web底层协议及其实现方法。

系统理解Spring MVC框架,为灵活开发高质量产品打下坚实基础。

深入理解Spring MVC的编程技巧和设计理念,提高综合思考、整体架构的能力。

学习作者自研的源代码分析方法——器用分析法,高效学习程序源代码。

资源目录:

前言

第一篇 网站基础知识

第1章 网站架构及其演变过程2

1.1 软件的三大类型2

1.2 基础的结构并不简单3

1.3 架构演变的起点5

1.4 海量数据的解决方案5

1.4.1 缓存和页面静态化5

1.4.2 数据库优化6

1.4.3 分离活跃数据8

1.4.4 批量读取和延迟修改8

1.4.5 读写分离9

1.4.6 分布式数据库10

1.4.7 NoSQL和Hadoop10

1.5 高并发的解决方案11

1.5.1 应用和静态资源分离11

1.5.2 页面缓存12

1.5.3 集群与分布式12

1.5.4 反向代理13

1.5.5 CDN14

1.6 底层的优化15

1.7 小结15

第2章 常见协议和标准17

2.1 DNS协议17

2.2 TCP/IP协议与Socket18

2.3 HTTP协议20

2.4 Servlet与Java Web开发22

第3章 DNS的设置23

3.1 DNS解析23

3.2 Windows 7设置DNS服务器24

3.3 Windows设置本机域名和IP的对应关系25

第4章 Java中Socket的用法26

4.1 普通Socket的用法26

4.2 NioSocket的用法28

第5章 自己动手实现HTTP协议33

第6章 详解Servlet37

6.1 Servlet接口37

6.2 GenericServlet40

6.3 HttpServlet41

第7章 Tomcat分析44

7.1 Tomcat的顶层结构及启动过程44

7.1.1 Tomcat的顶层结构44

7.1.2 Bootstrap的启动过程45

7.1.3 Catalina的启动过程47

7.1.4 Server的启动过程48

7.1.5 Service的启动过程50

7.2 Tomcat的生命周期管理52

7.2.1 Lifecycle接口52

7.2.2 LifecycleBase53

7.3 Container分析59

7.3.1 ContainerBase的结构59

7.3.2 Container的4个子容器60

7.3.3 4种容器的配置方法60

7.3.4 Container的启动62

7.4 Pipeline-Value管道69

7.4.1 Pipeline-Value处理模式69

7.4.2 Pipeline-Value的实现方法70

7.5 Connector分析73

7.5.1 Connector的结构73

7.5.2 Connector自身类74

7.5.3 ProtocolHandler77

7.5.4 处理TCP/IP协议的Endpoint77

7.5.5 处理HTTP协议的Processor80

7.5.6 适配器Adapter81

第二篇 俯视Spring MVC

第8章 Spring MVC之初体验84

8.1 环境搭建84

8.2 Spring MVC最简单的配置84

8.2.1 在web.xml中配置Servlet85

8.2.2 创建Spring MVC的xml配置文件85

8.2.3  创建Controller和view86

8.3 关联spring源代码87

8.4 小结89

第9章 创建Spring MVC之器90

9.1 整体结构介绍90

9.2 HttpServletBean93

9.3 FrameworkServlet95

9.4 DispatcherServlet100

9.5 小结107

第10章 Spring MVC之用108

10.1 HttpServletBean108

10.2 FrameworkServlet108

10.3 DispatcherServlet114

10.4 doDispatch结构118

10.5 小结123

第三篇 Spring MVC组件分析

第11章 组件概览126

11.1 HandlerMapping126

11.2 HandlerAdapter128

11.3 HandlerExceptionResolver130

11.4 ViewResolver131

11.5 RequestToViewNameTranslator133

11.6 LocaleResolver133

11.7 ThemeResolver135

11.8 MultipartResolver137

11.9 FlashMapManager138

11.10 小结139

第12章 HandlerMapping140

12.1 AbstractHandlerMapping140

12.1.1 创建AbstractHandlerMapping之器141

12.1.2 AbstractHandlerMapping之用142

12.2 AbstractUrlHandlerMapping系列143

12.2.1 AbstractUrlHandlerMapping143

12.2.2 SimpleUrlHandlerMapping149

12.2.3 AbstractDetectingUrlHandler-Mapping150

12.3 AbstractHandlerMethodMapping系列152

12.3.1 创建AbstractHandlerMethod-Mapping系列之器153

12.3.2 AbstractHandlerMethodMapping系列之用158

12.4 小结159

第13章 HandlerAdapter161

13.1 RequestMappingHandlerAdapter概述162

13.2 RequestMappingHandlerAdapter自身结构169

13.2.1 创建RequestMappingHandler-Adapter之器169

13.2.2 RequestMappingHandlerAdapter之用173

13.2.3 小结185

13.3 ModelAndViewContainer185

13.4 SessionAttributesHandler和SessionAttributeStore188

13.5 ModelFactory192

13.5.1 初始化Model192

13.5.2 更新Model197

13.6 ServletInvocableHandlerMethod199

13.6.1 HandlerMethod199

13.6.2 InvocableHandlerMethod203

13.6.3 ServletInvocableHandler-Method205

13.7 HandlerMethodArgumentResolver207

13.8 HandlerMethodReturnValue-Handler218

13.9 小结221

第14章 ViewResolver223

14.1 ContentNegotiatingViewResolver225

14.2 AbstractCachingViewResolver系列228

UrlBasedViewResolver231

14.3 小结235

第15章 RequestToViewName-Translator237

第16章 HandlerExceptionResolver239

16.1 AbstractHandlerException-Resolver239

16.2 ExceptionHandlerException-Resolver241

16.3 DefaultHandlerExceptionResolver243

16.4 ResponseStatusExceptionResolver245

16.5 SimpleMappingExceptionResolver246

16.6 小结250

第17章 MultipartResolver251

17.1 StandardServletMultipart-Resolver251

17.2 CommonsMultipartResolver253

17.3 小结256

第18章 LocaleResolver257

第19章 ThemeResolver263

第20章 FlashMapManager266

第四篇 总结与补充

第21章 总结272

21.1 Spring MVC原理总结272

21.2 实际跟踪一个请求275

第22章 异步请求281

22.1 Servlet 3.0对异步请求的支持281

22.1.1 Servlet 3.0处理异步请求实例282

22.1.2 异步请求监听器Async-Listener284

22.2 Spring MVC中的异步请求286

22.2.1 Spring MVC中异步请求相关组件286

22.2.2 Spring MVC对异步请求的支持297

22.2.3 WebAsyncTask和Callable类型异步请求的处理过程及用法301

22.2.4 DeferredResult类型异步请求的处理过程及用法303

22.2.5 ListenableFuture类型异步请求的处理过程及用法305

22.3 小结309

资源截图:

1.png

本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。

最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或联络我们。

对于会员专享、整站源码、程序插件、网站模板、网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。

如果您已经成功付款但是网站没有弹出成功提示,请联系站长QQ&VX:1754646538 提供付款信息为您处理。

源码素材属于虚拟商品,具有可复制性,可传播性,一旦授予,不接受任何形式的退款、换货要求。请您在购买获取之前确认好 是您所需要的资源。