Spring MVC【创建与使用】

🍎一.Spring MVC介绍

🍒1.1 什么是SpringMVC?

Spring Web MVC 是基于 Servlet API 构建的原始 Web 框架,从⼀开始就包含在 Spring 框架中。它的正式名称“Spring Web MVC”来⾃其源模块的名称(Spring-webmvc),但它通常被称为“Spring MVC” .

从上述定义我们可以得出两个关键信息:

  1. Spring MVC 是⼀个 Web 框架
  2. Spring MVC 是基于 Servlet API 构建的

🍒1.2 MVC 定义

MVC 是 Model View Controller 的缩写,它是软件⼯程中的⼀种软件架构模式,它把软件系统分为 模型、视图和控制器 三个基本部分

在这里插入图片描述

● Model(模型)是应⽤程序中⽤于处理应⽤程序数据逻辑的部分。通常模型对象负责在数据库中存取数据

● View(视图)是应⽤程序中处理数据显示的部分。通常视图是依据模型数据创建的

● Controller(控制器)是应⽤程序中处理⽤户交互的部分。通常控制器负责从视图读取数据,控制⽤户输⼊,并向模型发送数据

🍒1.3 Spring MVC 与 MVC 的区别

MVC 是⼀种思想,⽽ Spring MVC 是对 MVC 思想的具体实现
总结来说,Spring MVC 是⼀个实现了 MVC 模式,并继承了 Servlet API 的 Web 框架。既然是 Web框架,那么当⽤户在浏览器中输⼊了 url 之后,我们的 Spring MVC 项⽬就可以感知到⽤户的请求

🍒1.4 Spring MVC的基本功能

Spring MVC 我们只需要掌握以下 3 个基本功能:

  1. 连接的功能:将⽤户(浏览器)和 Java 程序连接起来,也就是访问⼀个地址能够调⽤到我们的Spring 程序

  2. 获取参数的功能:⽤户访问的时候会带⼀些参数,在程序中要想办法获取到参数

  3. 输出数据的功能:执⾏了业务逻辑之后,要把程序执⾏的结果返回给⽤户对于 Spring MVC 来说,掌握了以上 3 个功能就相当于掌握了 Spring MVC

🍎二. Spring MVC项目的创建

🍒2.1 Spring MVC 创建

Spring MVC 项⽬创建和 Spring Boot 创建项⽬相同(Spring MVC 使⽤ Spring Boot 的⽅式创建),在创建的时候选择 Spring Web 就相当于创建了 Spring MVC 的项⽬

Spring MVC 可以基于 Spring Boot 创建,也就是创建⼀个 Spring Boot 项⽬,勾选上 Spring Web模块即可,如下图所示:
在这里插入图片描述

🍒2.2 Spring MVC 连接

在 Spring MVC 中使⽤ @RequestMapping 来实现 URL 路由映射,也就是浏览器连接程序的作⽤
例如:
在我们所部署的项目中返回一个"hello world!“的这个方法,我我们就可以利用@RequestMapp(”/你所设置的访问目录")在本地浏览器网站输入127.0.0.1:8080/输入你所设置的目录就会在页面中返回你设置的方法"hello world!"

@Controller
public class UserController {
    //返回一个非静态页面的数据
    @ResponseBody 
    
    //设置路由url/第一路径
    @RequestMapping("/sayhi") 
    public String sayHi(){
        return "hello world." ;
    }
}

在这里插入图片描述

🍎 @RequestMapping 与 (GetMapping和PostMapping)注解的使用

@RequestMapping的请求方式
● 如果方法上的@RequestMapping注解没有设置method属性,则get和post请求默认都可以访问

● 如果方法上的@RequestMapping注解设置了method属性,则只能是相应的请求方式可以访问

🍒3.1 @RequestMapping注解的介绍与使用

@RequestMapping 即可修饰类,也可以修饰⽅法,当修饰类和⽅法时,访问的地址是类 + ⽅法

@RequestMapping 是 Spring Web 应⽤程序中最常被⽤到的注解之⼀,它是⽤来注册接⼝的路由映射的.
路由映射:所谓的路由映射指的是,当⽤户访问⼀个 url 时,将⽤户的请求对应到程序中某个类的某个⽅法的过程就叫路由映射

@RequestMapping 基础使⽤就与刚才我们提到的Spring MVC连接中提到的就

我们也可以在method属性中来选择使用哪个方法

 @RequestMapping(method = RequestMethod.POST, value = "/sayhi2")
    public String sayHi2(){
        return "Hello World!";
    }

🍒3.2 GetMapping注解的使用

// 写法1
@RequestMapping("/index")
// 写法2
@RequestMapping(value = "/index",method = RequestMethod.GET)
// 写法3
@GetMapping("/index")

我们可以通过postman来进行验证,是否GetMapping注解只能支持Get方法访问

  @GetMapping("/sayhi4")
    public String sayHi4(){
        return "Hello World4!";
    }

在这里插入图片描述
我们可以在postman不能在post方法下进行访问
在这里插入图片描述

🍒3.3 PostMapping注解的介绍与使用

// 写法1
@RequestMapping(value = "/index",method = RequestMethod.POST)
// 写法2
@PostMapping("/index")

我们可以通过postman来进行验证,是否PostMapping注解只能支持Post方法访问

@PostMapping("/sayhi3")
    public String sayHi3(){
        return "Hello World3!";
    }

在这里插入图片描述
我们可以在postman中发现不能在Get方法下进行访问
在这里插入图片描述

在这里插入图片描述

  • 9
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Moon Bay

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值