Springmvc快速入门
springmvc作为当今主流的MVC框架之一,已经超越了开发者们对struts的喜爱,它通过一套注解,可以让一个简单的JavaBean类成为处理请求的controller,无须实现任何接口,同时呢,它还支持了RESTful编码风格的请求,这个之后再说,本篇文章主要是对于springmvc的快速入门进行介绍。
1、入门
步骤简介:
① 导入SpringMVC相关坐标
② 配置SpringMVC核心控制器DispathcerServlet
③ 创建Controller类和视图页面
④ 使用注解配置Controller类中业务方法的映射地址
⑤ 配置SpringMVC核心文件 spring-mvc.xml
⑥ 客户端发起请求测试
- 导入SpringMVC相关坐标
<!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.3.9</version>
</dependency>
- 配置SpringMVC核心控制器DispathcerServlet
<!--配置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>
- 创建Controller类和视图页面(success.jsp自行创建,随意写)
- 使用注解配置Controller类中业务方法的映射地址,看注释
package gyl.top.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class UserController {
// 使用注解配置Controller类中业务方法的映射地址
@RequestMapping("/quick")
public String save() {
System.out.println("controller are running...");
return "success.jsp";
}
}
- 配置SpringMVC核心文件 spring-mvc.xml
<!--spring-mvc.xml-->
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
<!--配置注解扫描-->
<context:component-scan base-package="gyl.top.controller"/>
</beans>
- 自行访问测试即可
2、springmvc执行流程
spring最核心的就是前端控制器,它负责请求和相应的调用及分发,起着关键性的作用,下面呢,给大家简单介绍一下上面的代码的执行流程,不用担心看不懂,现阶段我们只需要了解springmvc中各个组件是如何执行的即可,熟悉以后再去深入,学起来比较轻松。
- 执行流程图
① 用户发送请求至前端控制器。
② 前端控制器收到请求调用处理器映射器。
③ 处理器映射器找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及处理器拦截器(如果有则生成)一并返回给前端控制器。
④ 前端控制器调用处理器适配器。
⑤ 处理器适配器经过适配调用具体的处理器(Controller,也叫后端控制器)。
⑥ 处理器执行完成返回模型和视图对象。
⑦ 处理器适配器将处理器执行结果模型和视图对象返回给前端控制器。
⑧ 前端控制器再将模型和视图对象传给视图解析器。
⑨ 视图解析器解析后返回具体视图对象view。
⑩ 前端控制器根据视图对象进行渲染视图(即将模型数据填充至视图中)最后前端控制器响应用户。
3、springmvc组件解析
下面会给大家简单介绍一下上述执行流程中各个组件的作用,方便大家理解
-
前端控制器
用户请求到达前端控制器,前端控制器通过调用其他组件来处理用户的请求,最终返回给用户响应,它的存在是为了调用其他各个组件,分派任务给他们,降低了各个组件之间的耦合性
-
处理器映射器
它负责根据请求找到具体的处理器,也就是controller,并返回给一条执行链,为什么是执行链的原因是因为一个请求可能除了目的请求,中间还有拦截器,处理器映射器会将它们处理为一条执行链一并返回
-
处理器适配器
主要用来调用具体的处理器,并把controller返回的模型和视图对象返回给前端控制器
-
处理器
真正的处理器,负责处理用户的需求
-
视图解析器
负责将模型和视图对象生成具体视图对象,利用该对象可以进行视图渲染
-
视图
一般情况下需要通过页面标签或页面模版技术将模型数据通过页面展示给用户,需要由程
序员根据业务需求开发具体的页面 -
视图解析器
负责将模型和视图对象生成具体视图对象,利用该对象可以进行视图渲染
-
视图
一般情况下需要通过页面标签或页面模版技术将模型数据通过页面展示给用户,需要由程
序员根据业务需求开发具体的页面
哦了,大概内容就这么多了,大家对于入门了解即可,随着慢慢深入学习,反回来看这些都是小菜一碟,之后温故知新吧。