目录
一.什么是SpringMVC呢?
在官方定义中,所谓的SpringMVC是基于Servlet API 构建的原始 Web 框架,从⼀开始就包含在 Spring 框架中,从⼀开始就包含在 Spring 框架中。它就被称为MVC。
总结:SpringMvc是一个web框架,基于Servlet API构建
1.1MVC的介绍
SpringMVC从名字上分解的话,就是Spring和MVC,那么我们就先来讲解一下,什么是MVC!
MVC的全名是Model View Controller ,是软件工程的一种架构模式,分为三部分:模型、视图和控制器。
- Model(模型):应⽤程序中⽤于处理应⽤程序数据逻辑的部分。通常模型对象负责在数据库中存取数据
- View(视图)是应⽤程序中处理数据显示的部分。通常视图是依据模型数据创建的。
-
Controller(控制器)是应⽤程序中处理⽤户交互的部分。通常控制器负责从视图读取数据, 控制⽤户输⼊,并向模型发送数据。
总结:人向Controller层请求数据,Controller就向Model层请求数据,model层将数据传递给Controller,然后Controller层不是直接将数据传递请求者,而是给View,view将数据给请求者!
1.2SpringMVC和MVC的关系
MVC 是⼀种思想,⽽ Spring MVC 是对 MVC 思想的具体实现。总结来说,Spring MVC 是⼀个实现了 MVC 模式,并继承了 Servlet API 的 Web 框架。既然是 Web框架,那么当⽤户在浏览器中输⼊了 url 之后,我们的 Spring MVC 项⽬就可以感知到⽤户的请求。
两者之间的联系:
- Spring MVC 是基于 MVC 架构模式的 Web 应用程序开发框架,用于构建 Java Web 应用程序。
- Spring MVC 扩展了经典的 MVC 架构,提供了一些额外的功能和特性,使得开发 Web 应用程序更加简单和灵活。
- 在 Spring MVC 中,模型(Model)表示为 POJO(Plain Old Java Object),视图(View)通常是 JSP、Thymeleaf 或其他模板技术,而控制器(Controller)通常是一个带有
@Controller
注解的 Spring Bean。 - Spring MVC 提供了一套基于注解的请求映射机制,简化了 URL 到处理器的映射配置。
二.SpringMVC的学习
目前的Java项目都是基于Spring或者SpringBoot开发,但是无论是哪个,其核心都是SpringMVC,可以说SpringMVC是Spring框架的核心模块,因此总结而言,大部分Java项目约等于SpringMVC项目,这就是我们学SpringMVC的原因。
在实际当中,创建SpringBoot项目时,勾选的SpringWeb框架就是SpringMVC框架!如下图:
学习 SpringMVC 主要掌握以下三个功能:
- 连接的功能:将⽤户(浏览器)和 Java 程序连接起来,也就是访问⼀个地址能够调⽤到我们的Spring 程序。
- 获取参数的功能:⽤户访问的时候会带⼀些参数,在程序中要想办法获取到参数。
- 输出数据的功能:执⾏了业务逻辑之后,要把程序执⾏的结果返回给⽤户。
第一步:创建项目
- 使用Maven项目添加Spring MVC框架依赖的方式创建
- 使用SpringBoot的方式创建的Spring MVC项目
但由于第一种方式过于繁琐,我们这边采取第二种,如上图创建。
第二步,SpringMVC的连接
在讲解连接之前,我们需要明白一个专业词汇:路由映射!
所谓的路由映射指的是,当用户访问一个url时,将用户的请求对应到程序中某个类的某个方法的过程。
实现方式:使用相关注解:@RequestMapping
,@Pos