SpringMVC初学习
- 2022 年 4 月 13 日
- 笔记
# SpringMVC快速入门
@[TOC](文章目录)
—
# 前言
`提示:这里可以添加本文要记录的大概内容:`
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。
—
`提示:以下是本篇文章正文内容,下面案例可供参考`
# 一、SpringMVC是什么
springmvc是一种web层mvc框架,它是spring的一个模块,拥有spring的特性。springmvc分离了控制器、模型对象、分派器以及处理程序对象的角色。
# 二、开发步骤
## 1.导入SpringMVC相关坐标
>代码如下(示例):
“`java
<!–spring-mvc–>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.0.5.RELEASE</version>
<!–需要与前面的spring-web,spring-context,spring-test保持一致的版本–>
</dependency>
“`
## 2.配置SpringMVC核心控制器DispatcherServlet
“`java
<!–2–>
<!–配置SpringMvc的前端控制器–>
<servlet>
<servlet-name>DispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>DispatcherServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
“`
## 3.创建Controller类和视图页面
“`java
@RequestMapping( “/quick”)
public String save(){
System.out.println(“Controller save running…”);
//返回视图
// 默认为转发
return “success”;
“`
## 4.使用注解配置Controller类中业务方法的映射地址
“`java
import org.springframework.stereotype.Controller;
@Controller
“`
## 5.配置SpringMVC核心恩建spring-mvc.xml
“`xml
<?xml version=”1.0″ encoding=”UTF-8″?>
<beans xmlns=”//www.springframework.org/schema/beans”
xmlns:xsi=”//www.w3.org/2001/XMLSchema-instance”
xmlns:context=”//www.springframework.org/schema/context”
xsi:schemaLocation=”//www.springframework.org/schema/beans //www.springframework.org/schema/beans/spring-beans.xsd
//www.springframework.org/schema/context //www.springframework.org/schema/context/spring-context.xsd “>
<!–5–>
<!–Controller组件扫描–>
<context:component-scan base-package=”com.lemon”>
<context:include-filter type=”annotation” expression=”org.springframework.stereotype.Controller”/>
</context:component-scan>
<!–配置内部资源解析器–>
<bean id=”viewResolver” class=”org.springframework.web.servlet.view.InternalResourceViewResolver”>
<!–/jsp/success.jsp–>
<property name=”prefix” value=”/jsp/”></property>
<property name=”suffix” value=”.jsp”></property>
</bean>
</beans>
“`
## SpringMVC的执行流程
1. 用户发送请求至前端控制器DispatcherServlet
2. 前端控制器DispatcherServlet收到请求调用HandlerMapping处理器映射器
3. 处理器映射器找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及处理器拦截器(前提是有),一起返回到前端控制器DispatcherServlet
4. DispatcherServlet调用HandlerAdapter处理器适配器
5. HandlerAdapter经过适配调用具体的处理器(Controller,即后端控制器)
6. 后端控制器Controller执行完成后,返回到ModerlAndView(模型和数据)
7. HandlerAdapter将后端控制器Controller执行结果给MdelAndView返回到前端控制器DispatcherServlet
8. 前端控制器将ModelAndView传给视图解析器ViewReslover
9. 视图解析器ViewReslover,解析完成后返回到具体的View
10. 前端控制器 DispatcherServlet根据具体的View进行视图渲染,即将具体的模型数据填充到View中,DispatcherServlet响应用户的请求
—
# 三、 知识要点
**SpringMVC的相关组件**
– 前端控制器:DispatcherServlet
– 处理器映射器:HandlerMapping
– 处理器适配器:HanderAdapter
– 处理器:Handler
– 视图解析器:View Resolver
– 视图:View
**SpringMVC的注解和配置**
– 请求映射注释:@RequestMapping
– 视图解析器配置:
*REDIRECT_URL_PREFIX=”redirect”
FORWARD_URL_PREFIX=”forward:”
prefix=””;
suffix=””;*