SpringMVC框架搭建及重点

本文详细介绍了SpringMVC的重要组件,包括DispatcherServlet、HandlerMapping、HandlerAdapter和ViewResolver。深入探讨了SpringMVC的运行原理,通过图解和文字解释了请求处理流程。此外,还讲解了如何搭建SpringMVC环境,包括导入jar包、配置web.xml和创建springmvc.xml。文章重点讲述了传参方式,如@RequestParam和RESTful风格,以及不同跳转方式,如请求转发和重定向。
摘要由CSDN通过智能技术生成

1、SpringMVC重要组件

1.1:DispatcherServlet: 前端控制器,接收所有请求(如果配置/不包含 jsp)
1.2 :HandlerMapping: 解析请求格式的.判断希望要执行哪个具体的方法.
1.3:HandlerAdapter: 负责调用具体的方法.
1.4:ViewResovler:视图解析器.解析结果,准备跳转到具体的物理视图

2、SpringMVC运行原理

2.1 图解:

![在这里插入图片描述](https://img-blog.csdnimg.cn/20190828120708170.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ0MDk1NDYw,size_16,color_FFFFFF,t_70)

2.2文字解释:

如果在 web.xml 中设置 DispatcherServlet 的<url-pattern>为/时,当用户

发起请求,请 求 一 个 控 制 器 , 首 先 会 执 行 DispatcherServlet. 由
DispatcherServlet 调 用 HandlerMapping的DefaultAnnotationHandlerMapping
解 析 URL, 解 析 后 调 用HandlerAdatper 组件的 AnnotationMethodHandlerAdapter
调 用Controller 中的 HandlerMethod.当 HandlerMethod 执行完成后会返回
View,会被 ViewResovler 进行视图解析,解析后调用 jsp 对应的.class 文
件并运行,最终把运行.class 文件的结果响应给客户端。

3、SpringMVC环境搭建

1、导入相关jar包

在这里插入图片描述

2、在web.xml文件配置前端控制器

2.1 初始化参数是为了配置springmvc.xml文件的路径 如果不配置的话会默认去/WEB-INF/<servlet-name>-servlet.xml找
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190828120803986.png)
	contextConfigLocation源码中设置初始化提供的参数名
	![在这里插入图片描述](https://img-blog.csdnimg.cn/20190828120822793.png)

2.2 配置映射 确定什么情况下用控制器

在这里插入图片描述
2.3 字符编码过滤器(解决中文乱码问题)
在这里插入图片描述

3、在src下新建springmvc.xml配置文件

	一般分四步(web.xml中配置的前端控制器内初始化的classpath:springmvc.xml就是为了直接找到这个路径)
3.1 扫描注解(主要是controller)(此处必须配置 如果不配置的话控制器中的注解不会生效)

在这里插入图片描述

3.2 注解驱动

在这里插入图片描述

3.3 加载静态资源文件(因为前端控制器中拦截的是”/”如果不配置的话无法访问静态资源)

在这里插入图片描述

3.4 配置视图解析器(一般可以采用默认的 当比较麻烦时可以配置视图解析器 作用:在名称前加上前缀和后缀)

在这里插入图片描述

4、编写控制器类

(主要注解@Controller和 @RequestMapper(”name”) 用return进行跳转 如果不想跳转的话需要在@RequestMapping下加上注解@ResponseBody)

在这里插入图片描述

4、SpringMVC重点

4.1 传参(注解@RequestParam的使用)

	1. 把内容写到方法(HandlerMethod)参数中,SpringMVC 只要有这个内

容,注入内容.
2. 基本数据类型参数
2.1 默认保证参数名称和请求中传递的参数名相同

在这里插入图片描述
2.2 如果请求参数名和方法参数名不对应使用@RequestParam()赋

在这里插入图片描述

4.2 restful传值方式

1、简化 jsp 中参数编写格式
2、在 jsp 中设定特定的格式
在这里插入图片描述
3、 在控制器中
3.1 在@RequestMapping 中一定要和请求格式对应
3.2 {名称} 中名称自定义名称
3.3 @PathVariable 获取@RequestMapping 中内容,默认按照
方法参数名称去寻找.
在这里插入图片描述

4.3 跳转方式

  1. 默认跳转方式请求转发(return “name”).
  2. 设置返回值字符串内容
    2.1 添加 redirect:资源路径 重定向
    2.2 添加 forward:资源路径 或省略 forward: 转发
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值