spring MVC

什么是 spring MVC

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

什么是 MVC

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

● Model(模型)是应⽤程序中⽤于处理应⽤程序数据逻辑的部分。通常模型对象负责在数据库中存取数据。
● View(视图)是应⽤程序中处理数据显示的部分。通常视图是依据模型数据创建的。(这个基本没有了,前后端分离了)
● Controller(控制器)是应⽤程序中处理⽤户交互的部分。通常控制器负责从视图读取数据,控制⽤户输⼊,并向模型发送数据。

MVC 和 Spring MVC 的关系

        MVC 是⼀种思想,⽽ Spring MVC 是对 MVC 思想的具体实现。 即 Spring MVC 是⼀个实现了 MVC 模式,并继承了 Servlet API 的 Web 框架。既然是 Web 框架,那么当⽤户在浏览器中输⼊了 url 之后,我们的 Spring MVC 项目就可以感知到⽤户的请求。
        绝大部分的 Java 项⽬都是基于 Spring(或 Spring Boot)的,而 Spring 的核心就是 Spring MVC。 创建的所有  Spring、Spring Boot 项⽬基本都是基于 Spring MVC 的。

Spring MVC 的三个步骤

Spring MVC 创建和连接

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

创建⼀个 UserController 类,实现⽤户到 Spring 程序的互联互通:
package com.example.springmvcdemo.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;

@Controller
@ResponseBody  // 这个注解意思:返回的结果是数据而不是页面(前后端分离)
public class UserController {

    @RequestMapping("/say")  // 默认支持所有类型的请求
//    @RequestMapping(value = "/say", method = RequestMethod.POST)  // 默认情况下是所有请求都可以接收,如果想只接收 post,就再设置一个 method 方法
    public String say() {
        return "hello, MVC";
    }

    @PostMapping("/sayPost") // 或者使用这个注解
    public String sayPost() {
        return "hello, MVC, sayPost";
    }

    @GetMapping("/satGet") // 这个注解只能接收 get 请求
    public String satGet() {
        return "hello, MVC, satGet";
    }
}

@RequestMapping 注解介绍

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

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

获取参数

单个参数

直接设置方法的形参来进行接收(key 要对应)

多个参数

1. 设置多个参数来进行接收

2. 构造一个对象来接收

相关推荐

  1. <span style='color:red;'>SpringMVC</span>

    SpringMVC

    2024-06-07 22:56:06      61 阅读
  2. <span style='color:red;'>SpringMVC</span>

    SpringMVC

    2024-06-07 22:56:06      52 阅读
  3. <span style='color:red;'>SpringMVC</span>

    SpringMVC

    2024-06-07 22:56:06      53 阅读
  4. <span style='color:red;'>SpringMVC</span>

    SpringMVC

    2024-06-07 22:56:06      60 阅读
  5. <span style='color:red;'>springMVC</span>

    springMVC

    2024-06-07 22:56:06      45 阅读
  6. <span style='color:red;'>SpringMVC</span>

    SpringMVC

    2024-06-07 22:56:06      38 阅读
  7. <span style='color:red;'>SpringMVC</span>

    SpringMVC

    2024-06-07 22:56:06      42 阅读
  8. <span style='color:red;'>SpringMVC</span>

    SpringMVC

    2024-06-07 22:56:06      39 阅读
  9. SpringMVC

    2024-06-07 22:56:06       42 阅读
  10. <span style='color:red;'>springMVC</span>

    springMVC

    2024-06-07 22:56:06      36 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-07 22:56:06       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-07 22:56:06       100 阅读
  3. 在Django里面运行非项目文件

    2024-06-07 22:56:06       82 阅读
  4. Python语言-面向对象

    2024-06-07 22:56:06       91 阅读

热门阅读

  1. 使用Python的xml.etree.ElementTree模块解析XML文件

    2024-06-07 22:56:06       31 阅读
  2. 【C语言】动态内存管理技术文档

    2024-06-07 22:56:06       26 阅读
  3. AT_abc014_3 题解

    2024-06-07 22:56:06       27 阅读
  4. 如何在Python中处理时间和日期

    2024-06-07 22:56:06       27 阅读
  5. 深度解读 ChatGPT基本原理

    2024-06-07 22:56:06       33 阅读
  6. 驱动开发的分离与分层

    2024-06-07 22:56:06       34 阅读
  7. git使用

    git使用

    2024-06-07 22:56:06      23 阅读
  8. 「前端+鸿蒙」鸿蒙应用开发简介

    2024-06-07 22:56:06       30 阅读
  9. PyTorch使用tensorboard的SummaryWriter报错

    2024-06-07 22:56:06       31 阅读
  10. DeepSort整体流程梳理及匈牙利算法解析

    2024-06-07 22:56:06       29 阅读
  11. PyCharm中快速搭建Python虚拟环境的指南

    2024-06-07 22:56:06       33 阅读