看透Spring MVC:源代码分析与实践 (Web开发技术丛书)

第一篇 网站基础知识
第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 H T T P协议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章 自己动手实现H T T P协议33
第6章 详解Servlet37
6.1 Servlet接口37
6.2 GenericServlet40
6.3 H T T PServlet41
第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.34种容器的配置方法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 处理H T T P协议的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 H T T PServletBean93
9.3 FrameworkServlet95
9.4 DispatcherServlet100
9.5 小结107
第10章 Spring MVC之用108
10.1 H T T PServletBean108
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
看透Spring MVC:源代码分析与实践 (Web开发技术丛书)的更多相关文章
- maven Spring+Spring MVC+Mybatis+mysql轻量级Java web开发环境搭建
之前一直在做的一个GIS系统项目,采用了jsp+servlet框架,数据传输框架采用了apache的thrift框架,短时多传的风格还不错,但是较其他的java web项目显得有点太臃肿了,现在给大家 ...
- IntelliJ IDEA:Getting Started with Spring MVC, Hibernate and JSON实践
原文:IntelliJ IDEA:Getting Started with Spring MVC, Hibernate and JSON实践 最近把编辑器换成IntelliJ IDEA,主要是Ecli ...
- Spring Mvc 源代码之我见 二
上一篇简单介绍了spring mvc 的一些基本内容 和DispatcherServlet 的doc.这一篇将会继续写我对Spring Mvc 源代码的理解.直接上代码: /** * This imp ...
- Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建
Spring MVC 学习笔记12 -- SpringMVC+Hibernate开发(1)依赖包搭建 用Hibernate帮助建立SpringMVC与数据库之间的联系,通过配置DAO层,Service ...
- 通俗易懂,什么是.NET?什么是.NET Framework?什么是.NET Core? .Net Web开发技术栈
通俗易懂,什么是.NET?什么是.NET Framework?什么是.NET Core? 什么是.NET?什么是.NET Framework?本文将从上往下,循序渐进的介绍一系列相关.NET的概念 ...
- .Net Web开发技术栈
有很多朋友有的因为兴趣,有的因为生计而走向了.Net中,有很多朋友想学,但是又不知道怎么学,学什么,怎么系统的学,为此我以我微薄之力总结归纳写了一篇.Net web开发技术栈,以此帮助那些想学,却不知 ...
- .NET Web开发技术简单整理 转
.NET Web开发技术简单整理 原文:http://www.cnblogs.com/SanMaoSpace/p/3157293.html 在最初学习一些编程语言.一些编程技术的时候,做的更多的是如何 ...
- .Net Web开发技术栈 收藏
原文:http://www.cnblogs.com/1996V/p/7700087.html#!comments 有很多朋友有的因为兴趣,有的因为生计而走向了.Net中,有很多朋友想学,但是又不知道怎 ...
- Web开发技术的演变
原文出处: WildFly 欢迎分享原创到伯乐头条 受到好文<Web开发的发展史>(英文)激发的灵感,写下我对web开发技术的认识. 1. 静态页面时代 大学时候,上机还得换卡穿拖鞋, ...
随机推荐
- [数论] hdu 5974 A Simple Math Problem (数论gcd)
传送门 •题意 一直整数$a,b$,有 $\left\{\begin{matrix}x+y=a\\ LCM(x*y)=b \end{matrix}\right.$ 求$x,y$ •思路 解题重点:若$ ...
- html5中的audio和video属性和事件汇总
<audio> 标签属性: src:音乐的URL preload:预加载 autoplay:自动播放 loop:循环播放 controls:浏览器自带的控制 <video> 标 ...
- IntPtr、Struct 相互转换
一般写c#代码基本用不到 相互转换 只有调用c++中的dll动态库的时候才用的到 struct转intptr public static IntPtr StructToIntPtr<T>( ...
- HDU6621 K-th Closest Distance HDU2019多校训练第四场 1008(主席树+二分)
HDU6621 K-th Closest Distance HDU2019多校训练第四场 1008(主席树+二分) 传送门:http://acm.hdu.edu.cn/showproblem.php? ...
- remote api
iperf -B 99.99.3.1 -c 192.168.42.242 -p 10002 -f m -i 1 -P 1 -w 1M -u -b 1M -t 20 iperf -B 192.168.4 ...
- springboot前后端分离项目redis做验证码及用户信息存储验证长时间不操作失效问题解决
1.错误回显:Error in execution; nested exception is io.lettuce.core.RedisCommandExecutionException: MISCO ...
- iptables脚本封ip
##自动封IP:分析web或应用日志或者网络连接状态封掉垃圾IP #!/bin/sh /bin/netstat -na|grep ESTABLISHED|awk |grep -v -E '192.16 ...
- ES6学习----let、const、解构赋值、新增字符串、模板字符串、Symbol类型、Proxy、Set
这篇es6的学习笔记来自于表哥 表严肃,是我遇到过的讲课最通透,英文发音最好听的老师,想一起听课就去这里吧 https://biaoyansu.com/i/hzhj1206 ES6就是JS6,JS的第 ...
- 【题解】284E. Coin Troubles(dp+图论建模)
[题解]284E. Coin Troubles(dp+图论建模) 题意就是要你跑一个完全背包,但是要求背包的方案中有个数相对大小的限制 考虑一个\(c_i<c_j\)的限制,就是一个\(c_i\ ...
- JAVA的引用类型
一.强引用 JAVA默认的引用类型,强引用,是在我们的开发工作当中普遍存在的.如果一个对象具有强引用,当内存空间不足的时候,java虚拟机宁可抛出OOM异常,也不会回收它来释放内存.但是我们可以将对象 ...