具体描述
Spring MVC是Spring框架中用于Web应用快速开发的一个模块,其中的MVC是Model-View-Controller的缩写。作为当今业界zui主流的Web开发框架,Spring MVC已经成为当前zui热门的开发技能,同时也广泛用于桌面开发领域。 Spring MVC学习指南(第 2版)重在讲述如何通过Spring MVC来开发基于Java的Web应用。全书共计12章,分别从Spring框架、模型2和MVC模式、Spring MVC介绍、控制器、数据绑定和表单标签库、传唤器和格式化、验证器、表达式语言、JSTL、国际化、上传文件、下载文件多个角度介绍了Spring MVC。除此之外,Spring MVC学习指南(第 2版)还配有丰富的示例以供读者练习和参考。 Spring MVC学习指南(第 2版)是一本Spring MVC的教程,内容细致、讲解清晰,非常适合Web开发 者和想要使用Spring MVC开发基于Java的Web应用的读者阅读。 Spring MVC是Spring框架中用于Web应用快速开发的一个模块,其中的MVC是Model-View-Controller的缩写。作为当今业界zui主流的Web开发框架,Spring MVC已经成为当前zui热门的开发技能,同时也广泛用于桌面开发领域。
Spring MVC学习指南(第2版)重在讲述如何通过Spring MVC来开发基于Java的Web应用。全书共计12章,分别从Spring框架、模型2和MVC模式、Spring MVC介绍、控制器、数据绑定和表单标签库、传唤器和格式化、验证器、表达式语言、JSTL、国际化、上传文件、下载文件多个角度介绍了Spring MVC。除此之外,Spring MVC学习指南(第2版)还配有丰富的示例以供读者练习和参考。
Spring MVC学习指南(第2版)是一本Spring MVC的教程,内容细致、讲解清晰,非常适合Web开发者和想要使用Spring MVC开发基于Java的Web应用的读者阅读。
作者简介
Paul Deck是一位资深的Spring Framework开发者,他曾经是How Tomcat Work一书的作者之一。
目录信息
第一章 Spring框架 1
1.1 XML配置文件 4
1.2 Spring控制反转容器的使用 4
1.2.3 通过构造器来创建一个bean实例 5
1.2.2 通过工厂方法来创建一个bean实例 5
1.2.3 DestroyMethod的使用 6
1.2.4 向构造器传参 6
1.2.5 Setter方式依赖注入 7
1.2.3 构造器方式依赖注入 10
1.3 小结 10
第二章 模型2和MVC模式 11
2.1 模型1介绍 11
2.2 模型2介绍 11
2.3 模型2之Servlet控制器 13
2.3.1 Product类 15
2.3.2 ProductForm类 15
2.3.3 ControllerServlet类 16
2.3.4 视图 20
2.3.5 测试应用 22
2.4 解耦控制器代码 23
2.5 校验器 27
2.6 后端 32
2.7 本章小结 33
第三章 SpringMVC介绍 34
3.1 采用SpringMVC的好处 34
3.2 SpringMVC的DispatcherServlet 35
3.3 Controller接口 36
3.4 第一个SpringMVC应用 37
3.4.1 目录结构 37
3.4.2 部署描述符文件和SpringMVC配置文件 38
3.4.3 Controller 39
3.4.4 View 40
3.4.5 测试应用 42
3.5 ViewResolver 43
3.6 本章小结 45
第四章 基于注解的控制器 46
4.1 SpringMVC注解类型 46
4.1.1 Controller注解类型 46
4.1.2 RequestMapping注解类型 47
4.2 编写请求处理方法 50
4.3 应用基于注解的控制器 52
4.3.1 目录结构 52
4.3.2 配置文件 52
4.3.3 Controller类 55
4.3.4 View 56
4.3.5 测试应用 57
4.4 应用@Autowired和@Service进行依赖注入 58
4.5 重定向和Flash属性 62
4.6 请求参数和路径变量 63
4.7 @ModelAttribute 66
4.8 小结 67
第五章 数据绑定和form标签库 68
5.1 数据绑定概览 68
5.2 form标签库 69
5.2.1 form标签 70
5.2.2 input标签 71
5.2.3 password标签 72
5.2.4 hidden标签 72
5.2.5 textarea标签 73
5.2.6 checkbox标签 73
5.2.7 radiobutton标签 74
5.2.8 checkboxes标签 74
5.2.9 radiobuttons标签 75
5.2.10 select标签 76
5.2.11 option标签 76
5.2.12 options标签 77
5.2.13 errors标签 77
5.3 数据绑定范例 78
5.3.1 目录结构 78
5.3.2 Domain类 78
5.3.3 Controller类 80
5.3.4 Service类 82
5.3.5 配置文件 85
5.3.6 视图 86
5.3.7 测试应用程序范例 88
5.4 小结 90
第六章 Converter和Formatter 91
6.1 converter 91
6.2 formatter 97
6.3 用registrar注册formatter 99
6.4 选择converter,还是formatter? 101
6.5 小结 101
第七章 验证器 102
7.1 验证概览 102
7.2 Spring验证器 103
7.3 ValidationUtils类 104
7.4 Spring的Validator范例 105
7.5 源文件 107
7.6 Controller类 107
7.7 测试验证器 109
7.8 JSR303验证 110
7.9 JSR303Validator范例 112
7.10 小结 114
第八章 表达式语言(EL) 115
8.1 表达式语言(EL)的语法 115
8.1.1 关键字 116
8.1.2 ()和.运算符 116
8.1.3 取值规则 117
8.2 访问JavaBean 118
8.3 EL隐式对象 118
8.3.1 pageContext 119
8.4 使用其他EL运算符 122
8.4.1 算术运算符 122
8.3.3 关系运算符 123
8.4.2 逻辑运算符 123
8.4.3 关系运算符 123
8.4.4 empty运算符 124
8.5 如何在JSP2.0及其更高版本中配置EL 124
8.5.1 实现免脚本的JSP页面 124
8.5.2 禁用EL计算 125
8.6 小结 126
第九章 JSTL 127
9.1 下载JSTL 127
9.2 JSTL库 127
9.3 一般行为 129
9.3.1 out标签 129
9.3.2 set标签 130
9.3.3 remove标签 132
9.4 条件行为 132
9.4.1 if标签 133
9.4.2 choose、when和otherwise标签 134
9.5 遍历行为 135
9.5.1 forEach标签 135
9.5.2 forTokens标签 143
9.6 与URL相关的行为 144
9.6.1 url标签 144
9.6.2 redirect标签 146
9.7 格式化行为 146
9.7.1 formatNumber标签 146
9.7.2 formatDate标签 149
9.7.3 timeZone标签 150
9.7.4 setTimeZone标签 152
9.7.5 parseNumber 152
9.7.6 parseDate标签 153
9.8 函数 155
9.8.1 contains函数 155
9.8.2 containsIgnoreCase函数 155
9.8.3 endsWith函数 156
9.8.4 escapeXml函数 156
9.8.5 indexOf函数 156
9.8.6 join函数 156
9.8.7 length函数 157
9.8.8 replace函数 157
9.8.9 split函数 157
9.8.10 startsWith函数 158
9.8.11 substring函数 158
9.8.12 substringAfter函数 158
9.8.13 substringBefore函数 158
9.8.14 toLowerCase函数 159
9.8.15 toUpperCase函数 159
9.8.16 trim函数 159
9.9 小结 159
第十章 国际化 160
10.1 语言区域 161
10.2 国际化SpringMVC应用程序 163
10.3 将文本元件隔离成属性文件 163
10.4 读取属性文件 165
10.5 告诉SpringMVC要使用哪个语言区域 166
10.6 使用message标签 167
10.7 范例 167
10.8 小结 173
第十一章 上传文件 174
11.1 客户端编程 174
11.2 MultipartFile接口 175
11.3 用CommonsFileUpload上传文件 176
11.4 Domain类 177
11.5 控制器 178
11.6 配置文件 179
11.7 JSP页面 181
11.8 应用程序的测试 183
11.9 用Servlet3及其更高版本上传文件 184
11.10 客户端上传 188
11.11 小结 196
第十二章 下载文件 197
12.1 文件下载概览 197
12.2 范例1:隐藏资源 198
12.3 范例2:防止交叉引用 202
12.4 小结 206
……
第13章 应用测试
附录A Tomcat 207
附录B servlet 211
附录C JavaServerPages 236
附录D 部署描述符 258
附录E部署描述符
· · · · · · (收起)
读后感
本书的作者Paul Deck,联合Budi Kurniawan出了一本新书《Servlet、JSP和Spring MVC初学指南》。从我对两本书的比较来看: 《Servlet、JSP和Spring MVC初学指南》 = Paul Deck的《Spring MVC学习指南》 + Budi Kurniawan新增的若干新章节 Budi Kurniawan增加了哪些章节呢? 会话...
前言部分 spring mvc定义: spring框架中用于web应用开发的一个模块。 http:网络通信协议。 url:spring mvc定义: spring框架中用于web应用开发的一个模块。 http:网络通信协议。 url:spring mvc定义: spring框架中用于web应用开发的一个模块。 http:网络通信协议。 url...
第一本从大学图书馆借来完整看完的书。 的确比较基础,有三分之一讲JSP相关的内容,可以顺便复习之前学的内容,进阶可以看官方文档。比起国内一些罗列知识点的书还是不错的。
用户评价
作为一名前端开发者,我之前对后端技术一直有些疏远,总觉得比较枯燥。但是,当我接触到《Spring MVC学习指南(第2版)》这本书之后,我开始对Java Web开发产生了浓厚的兴趣。书中的内容通俗易懂,而且结合了很多实际的应用场景,让我觉得这些技术离我并不遥远。 书中关于RESTful API的设计和实现,对我的工作非常有帮助。我能够更好地理解后端是如何处理前端的请求的,以及如何设计更友好的API接口。而且,书中关于JSON数据格式的讲解,以及如何在Spring MVC中进行JSON数据的序列化和反序列化,让我能够更有效地与后端进行数据交互。
这本书的内容之充实,超出了我之前的预期。我原本以为,对于Spring MVC的学习,只需要掌握一些基础的API使用就可以了,但《Spring MVC学习指南(第2版)》让我认识到,要想真正精通Spring MVC,还需要深入理解其设计理念和底层原理。 书中对于Spring MVC的注解驱动开发模式的讲解,让我印象深刻。作者详细介绍了各种注解的用法,以及如何利用注解来简化代码的编写。这不仅提高了开发效率,也使得代码更加清晰易读。而且,书中还介绍了如何结合Lambda表达式和Stream API等Java 8的新特性来编写更简洁、更高效的代码。
我一直认为,好的技术书籍,不仅仅是提供知识,更应该能够启发思考。《Spring MVC学习指南(第2版)》在这方面做得非常出色。它在讲解Spring MVC的各个模块时,并没有局限于技术本身,而是将其置于整个Web开发的生态环境中进行分析,并强调了设计模式和最佳实践的重要性。 书中关于Spring MVC的扩展机制的讲解,让我印象深刻。作者详细介绍了如何通过拦截器、过滤器、Advice等方式来扩展Spring MVC的功能,这让我意识到,Spring MVC并不是一个僵化的框架,而是可以根据我们的需求进行高度定制化的。而且,书中还鼓励读者去思考,如何利用Spring MVC的特性来解决实际业务问题,而不是简单地照搬代码。
坦白说,我之前也看过不少关于Spring MVC的书,但很多都停留在表面,或者内容比较陈旧。《Spring MVC学习指南(第2版)》这本书,则让我看到了Spring MVC的最新发展和最佳实践。书中对于Spring Boot与Spring MVC的结合,以及如何利用Spring Boot来快速构建Spring MVC应用,都给予了充分的讲解。 我尤其欣赏书中关于“如何构建一个可维护、可扩展的Spring MVC项目”的章节。它不仅仅是讲解了技术细节,更重要的是,它教会了我如何从项目整体的架构设计、代码组织、模块划分等方面来考虑,以确保项目的长期健康发展。这本书的价值,绝不仅仅在于教会你如何使用Spring MVC,更在于它能够帮助你养成良好的编程习惯和架构思维。
不得不说,这本书在深入剖析Spring MVC的底层原理方面做得相当出色。我之前一直停留在API使用的层面,对很多“为什么”没有深入探究。然而,当我翻开《Spring MVC学习指南(第2版)》后,我才真正理解了MVC设计模式在Spring框架中的具体体现,以及Spring如何通过IoC和AOP这些核心思想来简化Web开发的复杂度。特别是关于Spring的生命周期、Bean的加载机制,以及Spring MVC与Spring Core的整合细节,这些内容让我对整个Spring生态有了更宏观的认识。 书中关于视图解析器(ViewResolver)的讲解,也让我受益匪浅。之前我可能只用过InternalResourceViewResolver,但书中详细介绍了FreeMarker, Velocity, Thymeleaf等多种视图技术的集成方式,并且对比了它们的优缺点,这为我在实际项目中选择合适的视图技术提供了非常有价值的参考。而且,作者还深入讲解了如何配置和定制这些视图解析器,以满足更复杂的业务需求。对于RESTful风格的服务设计,书中也给予了足够的篇幅,从HTTP方法的使用,到响应状态码的约定,再到JSON数据的序列化和反序列化,都讲解得非常到位。
这本书,我真的要好好说道说道。作为一名在Java Web开发领域摸爬滚打了几年的老兵,我对Spring MVC这套框架可以说是既熟悉又充满敬畏。接触过很多关于Spring MVC的书籍,但《Spring MVC学习指南(第2版)》这本书,给我带来的冲击感,绝对是前所未有的。它的内容深度和广度,远超出了我之前的认知。我尤其欣赏作者在讲解核心概念时那种抽丝剥茧的细腻,就好像一位经验丰富的老师,耐心地引导你一步步走进Spring MVC的殿堂。书中对于请求处理流程的拆解,从DispatcherServlet的初始化,到HandlerMapping的查找,再到ModelAndView的构建和视图解析,每一个环节都梳理得井井有条,并且配以大量生动的代码示例,这对于我这种喜欢“动手实践”的学习者来说,简直是福音。 我记得在阅读关于数据绑定这一章的时候,我一度以为自己已经完全掌握了,然而书中关于复杂类型转换、自定义Converter的实现,以及与Hibernate等ORM框架集成时的微妙之处,都让我豁然开朗。之前在实际项目中遇到的数据校验问题,常常是手忙脚乱地写一堆if-else,现在看了书,才意识到Spring MVC本身就提供了强大的校验框架,并且可以与Bean Validation API无缝集成。作者对于表单提交、JSON交互、文件上传等常见场景的讲解,也都是基于最新的Spring版本,这对于保持技术的先进性至关重要。书中的案例设计也非常贴合实际,不像有些教材那样纸上谈兵,而是真正能够指导你在项目中落地。
这本书给我最直观的感受就是它的“落地性”。很多时候,学习一项新技术,最头疼的就是不知道如何将其应用到实际项目中。《Spring MVC学习指南(第2版)》这本书,恰恰解决了这个问题。它提供的每一个示例,都设计得非常贴合实际开发中的场景,从用户注册、登录,到商品展示、订单处理,这些都是我们日常工作中经常会遇到的功能。 我尤其喜欢书中关于“如何构建一个健壮的Web应用”的章节。它不仅讲解了Spring MVC的配置和使用,还涉及到了错误处理、异常捕获、日志记录、性能优化等多个方面。特别是书中关于全局异常处理器的配置,以及如何统一返回错误信息给客户端,这在我之前的开发过程中,一直是比较头疼的问题。现在,通过这本书的指引,我能够更规范、更有效地处理这些问题,大大提高了代码的可维护性和用户体验。
在我看来,《Spring MVC学习指南(第2版)》这本书不仅仅是一本技术教程,更像是一位经验丰富的导师,引领我一步步地在Spring MVC的道路上前进。书中对于Spring MVC的各个组件的讲解,都做到了深入浅出,并且配以大量贴合实际的案例,让我能够更好地理解和掌握这些技术。 我特别喜欢书中关于“如何进行单元测试和集成测试”的章节。在实际开发中,测试是非常重要的一环,但很多时候,我们都会忽略或者草草了事。这本书详细介绍了如何在Spring MVC项目中进行有效的测试,包括如何mock依赖,如何验证请求和响应,以及如何编写覆盖率更高的测试用例。这对于我提高代码质量,降低bug率非常有帮助。
作为一个对技术细节有着近乎偏执追求的开发者,我在这本书中找到了久违的满足感。《Spring MVC学习指南(第2版)》在讲解Spring MVC的核心组件时,几乎是把每一个类、每一个接口都拿出来细细品味了一番。就拿HandlerInterceptor来说,我之前可能只是用它来实现权限校验,但书中深入讲解了它的生命周期,以及如何利用它来实现日志记录、性能监控等多种功能。 而且,书中对于Spring MVC内部的事件发布和监听机制的讲解,也让我印象深刻。它让我们理解了Spring MVC是如何实现组件之间的解耦和通信的,这对于我们设计更灵活、更可扩展的应用程序非常有启发。我特别喜欢书中关于“请求处理流程的源码剖析”的部分,它带领我一步步地跟踪代码,理解每一个步骤的逻辑,这种深度的钻研,是我在其他很多书中都很少见到的。
对于想要在Java Web开发领域深耕的同行们来说,《Spring MVC学习指南(第2版)》绝对是一本值得反复研读的宝典。我之前在很多项目中都遇到过Spring MVC相关的技术难题,比如在处理并发请求时,如何保证数据的一致性,或者在部署时,如何优化Web应用的性能。这本书中,都给出了非常详尽的解答和指导。 作者在讲解Spring MVC的配置时,不仅仅是简单地罗列配置项,而是深入地解释了每一个配置项的含义和作用,以及它们之间的相互关系。这让我能够更好地理解Spring MVC的配置哲学,并能够根据实际需求进行灵活的配置。而且,书中对于Spring MVC与Shiro、Spring Security等安全框架的集成,以及与Redis、MQ等中间件的集成,也都有专门的章节进行讲解,这为构建复杂的企业级应用提供了非常好的参考。
排版看起来很舒服,干货太少,看了这书感觉我也可以写一本书了。。。
太基础了,不如网上资料
太基础了,不如网上资料
薄薄的一本 能讲到的基本都讲到了
太基础了,不如网上资料