Spring Web MVC入门(1)(建立连接)

一.什么是Spring Web MVC?

        Spring Web MVC是基于ServletAPI构建的原始Web框架,从一开始就包含在Spring框架中.它的正式名称"Spring Web MVC"来自其源模块的名称(Spring-webmvc),但它通常被称为"Spring MVC".

二.MVC的定义

    MVC是Model View Controller的缩写,它是软件工程中的一种软件架构设计模式,它把软件系统分为模型,视图和控制三个基本部分.

       

          View(视图):指在应用程序中专门用来与浏览器进行交互,展示数据的资源

          Model(模型):是应用程序的主体部分,用来处理程序中数据逻辑部分

          Controller(控制器):可以理解为一个分发器,用来决定对于视图发来的请求,需要用哪一个模型来处理,以及处理完后需要跳回到哪一个视图.即用来连接视图和模型.

三.什么是Spring MVC?

     MVC是一种架构设计模式,也是一种思想,而Spring MVC是对MVC思想的具体实现.除此之外,Spring MVC还是一个Web框架.

总结来说,Spring MVC是一个实现了MVC模式的Web框架

四.学习Spring MVC

   既然是Web框架,那么当用户下浏览器中输入url之后,我们的Spring MVC项目就可以感知到用户的请求,并给予响应.

  学习Spring MVC,重点也就是学习如何通过浏览器和用户程序进行交互.

主要分以下三个方面:

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

2.请求: 用户请求的时候会带一些参数,在程序中要想办法获取到参数,所以请求这块主要是获取参数的功能

3.响应: 执行了业务逻辑之后,要把程序执行的结果返回给用户,也就是响应.

1.建立连接

在Spring MVC中使用@RequestMapping来实现URL路由映射,也就是浏览器连接程序的作用

创建一个UserController类,实现用户通过浏览器和程序的交互,具体实现代码如下:

package com.example.demo;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class UserController {
    //路由器规则注册
    @RequestMapping("/sayHi")
    public String sayHi() {
        return "hello Spring MVC";
    }
}

方法名和路径名称无需一致

接下来访问: http://127.0.0.1:8080/sayHi ,就可以返回数据了

(1).@RequestMapping 注解介绍

@RequestMapping是Spring Web MVC应用程序中最常被用到的注解之一,它是用来注册接口的路由映射的.

表示服务器收到请求时,路径为/sayHi的请求就会调用sayHi这个方法的代码.

路由映射: 当用户访问一个URL时,将用户的请求对应到程序中某个类的方法的过程就叫路由映射.

(2).@RequestMapping 使用

@RequestMapping 既可以修饰类,也可以修饰方法,当修饰类和方法时,访问的地址是类路径+方法路径.

@RequestMapping标识一个类: 设置映射请求的请求路径的初始信息

@RequestMapping标识一个方法: 设置映射请求的请求路径的具体信息

@RequestMapping("/User")
@RestController
public class UserController {
    @RequestMapping("/sayHi")
    public String sayHi() {
        return "hello Spring MVC";
    }
}

访问地址: http://127.0.0.1:8080/User/sayHi

注意: @RequestMapping 的URL路径最前面加不加/都可以,Spring程序启动时,会进行判断,如果前面没加/,Spring会拼接上一个/

相关推荐

  1. TCP 连接建立

    2024-07-11 14:16:06       50 阅读
  2. git ssh建立连接

    2024-07-11 14:16:06       39 阅读
  3. 建立数据库连接时出错

    2024-07-11 14:16:06       54 阅读

最近更新

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

    2024-07-11 14:16:06       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-11 14:16:06       72 阅读
  3. 在Django里面运行非项目文件

    2024-07-11 14:16:06       58 阅读
  4. Python语言-面向对象

    2024-07-11 14:16:06       69 阅读

热门阅读

  1. 菜鸟的Leetcode(02)

    2024-07-11 14:16:06       24 阅读
  2. uniapp图片压缩之后在上传

    2024-07-11 14:16:06       22 阅读
  3. composables 目录下的文件(web前端)

    2024-07-11 14:16:06       23 阅读
  4. 刷题——利用两个栈实现队列

    2024-07-11 14:16:06       23 阅读
  5. AWS需要实名吗?

    2024-07-11 14:16:06       22 阅读
  6. Redis新手教程

    2024-07-11 14:16:06       21 阅读
  7. 薄冰英语语法学习--代词1

    2024-07-11 14:16:06       19 阅读
  8. 03-图像基础-视音频参数

    2024-07-11 14:16:06       27 阅读
  9. mysql中count的区别

    2024-07-11 14:16:06       21 阅读
  10. springboot对象参数赋值变化

    2024-07-11 14:16:06       18 阅读
  11. 什么是数据挖掘(python)

    2024-07-11 14:16:06       25 阅读