2020最新SpringMVC教程【IDEA版】-springmvc从入门到精通

这是一份详尽的SpringMVC教程,涵盖了从基础的Web开发原理到深入的SpringMVC配置和使用,包括注解式开发、请求处理、视图解析、SSM整合、异常处理和拦截器等内容,适合初学者和进阶者学习。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2021-06-28

思维导图

在这里插入图片描述

1/74p SpringMVC Web开发底层是servlet在这里插入图片描述

在这里插入图片描述

2/74p SpringMVC Web开发步骤


在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3/74p SpringMVC 中央调度器创建springmvc容器对象

在这里插入图片描述

4/74p SpringMVC 自定义容器配置文件

在这里插入图片描述

5/74p SpringMVC 设置web.xml的mapping部分【url-pattern】

mapping就是起了一个别名
在这里插入图片描述

6/74p SpringMVC 创建控制类

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7/74p SpringMVC 创建控制器方法

在这里插入图片描述

8/74p SpringMVC 测试请求

在这里插入图片描述
在这里插入图片描述

测试成功

9/74p SpringMVC 请求处理过程

在这里插入图片描述

上面的第4步,DispatcherServlet是根据MyController中的RequestMapping和web.xml中的映射关系(url-partern)找到doSome方法的。
简化过程
在这里插入图片描述
在这里插入图片描述

10/74p DispatcherServlet的init源代码

在这里插入图片描述

11/74p DispatcherServlet的doDispatch源代码

在这里插入图片描述

12/74p 配置视图解析器在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在springmvc.xml中配置视图解析器。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

13/74p SpringMVC注解式开发在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

14/74p 指定请求方式method属性

在这里插入图片描述

如果上面定义的访问方式和后面的不一致,就会报错。如下
在这里插入图片描述

15/74p 处理器方法形参request

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

16/74p 接受参数,逐个接收

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在上面的文本框中输入参数,然后就会传给springmvc的中央调度器DisPatcherServlet,DisPatcherServlet通过@RequestMapping中的参数找到对应的controller类,执行对应的controller方法,接收参数,并展示在show.jsp页面中。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

存在的一些问题,在上面的文本框中,如果年龄为空的话,在代码内部其实有一个字符串转为int类型的过程,就会发生错误。”400“错误,就是表示客户端错误,表示提交请求参数的过程中出现了错误。在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
第二个问题:
在这里插入图片描述

在这里插入图片描述

17/74p 使用过滤器解决post方式访问中文乱码问题

在这里插入图片描述
在这里插入图片描述

18/74p 复习第一天内容

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

19/74p 复习接收参数

在这里插入图片描述

20/74p RequestParam注解

在这里插入图片描述

解决办法:使用@RequestParam绑定
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

21/74p 对象接受参数

在这里插入图片描述

只要对象的属性名和请求参数名是一致的,框架就可以接收参数,并给属性赋值。
在这里插入图片描述

22/74p 返回值ModelAndView

返回结果有以下四大类,如果返回值需要数据和视图,那就使用ModelAndView,视图就表示需要跳转的页面。
在这里插入图片描述
在这里插入图片描述

23/74p 返回值String表示视图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

24/74p 返回值void响应ajax【了解】

回忆ajax,ajax是用来做局部刷新的技术

在这里插入图片描述
**加粗样式**

25/74p 返回值void响应json格式

在这里插入图片描述

使用框架做ajax

在这里插入图片描述

26/74p 返回值Object-注解驱动作用

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

27/74p 返回值Object-HttpMessageConverter

在这里插入图片描述
在这里插入图片描述

28/74p 返回值Object-注解驱动的对比在这里插入图片描述

在这里插入图片描述

面试题:springmvc的返回值是一个对象,怎么转为json输出呢?
只需要三步:
1、加入json的工具库依赖,springmvc默认的工具库是jackson
2、在springmvc配置文件中加mvc:annotation-driven注解驱动
3、在处理器方法的上面加入@ResponseBody注解

在加入注解驱动之前,messageConverter里面有4个类。
[org.springframework.http.converter.ByteArrayHttpMessageConverter@45127ec4, org.springframework.http.converter.StringHttpMessageConverter@4bd58816, org.springframework.http.converter.xml.SourceHttpMessageConverter@4fea15b4, org.springframework.http.converter.support.AllEncompassingFormHttpMessageConverter@ae8822d]

加入注解驱动之后
[org.springframework.http.converter.ByteArrayHttpMessageConverter@64de5955, org.springframework.http.converter.StringHttpMessageConverter@12cf056, org.springframework.http.converter.ResourceHttpMessageConverter@1ddc309b, org.springframework.http.converter.ResourceRegionHttpMessageConverter@339ea471, org.springframework.http.converter.xml.SourceHttpMessageConverter@251c57a6, org.springframework.http.converter.support.AllEncompassingFormHttpMessageConverter@43d4bd13, org.springframework.http.converter.xml.Jaxb2RootElementHttpMessageConverter@3ff0051a, org.springframework.http.converter.json.MappingJackson2HttpMessageConverter@790b93b9]

29/74p 返回值Student-Json

在这里插入图片描述

30/74p 返回值Student的处理流程

在这里插入图片描述

31/74p 返回值List是jsonArray

在这里插入图片描述

[{
   
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值