当前位置: 首页 > news >正文

Spring Web MVC快速入门

什么是Spring Web MVC

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

  1. View(视图) 指在应⽤程序中专⻔⽤来与浏览器进⾏交互,展⽰数据的资源.
  2. Model(模型) 是应⽤程序的主体部分,⽤来处理程序中数据逻辑的部分.
  3. Controller(控制器)可以理解为⼀个分发器,⽤来决定对于视图发来的请求,需要⽤哪⼀个模型来处理,以及处理完后需要跳回到哪⼀个视图。即⽤来连接视图和模型

学习Spring MVC

主要分以下三个⽅⾯:

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

Spring 程序。

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

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

开始运用

当我们在进行交互的时候,我们需要使用注解。

1、@RestController

实现用户通过浏览器和程序的交互

2、@RequestMapping

@RequestMapping 是 Spring Web MVC 应⽤程序中最常被⽤到的注解之⼀,它是⽤来注册接⼝的

路由映射的。

@RequestMapping 既⽀持Get请求, ⼜⽀持Post请求. 同理, 也⽀持其他的请求⽅式

我们测试后端⽅法时, 还需要去写前端代码,所以我们可以第三方工具:Apifox。

下载地址:

Apifox - API 文档、调试、Mock、测试一体化协作平台。拥有接口文档管理、接口调试、Mock、自动化测试等功能,接口开发、测试、联调效率,提升 10 倍。最好用的接口文档管理工具,接口自动化测试工具。

传递单个参数

我们可以使用apifox进行查询

传递多个参数

当有多个参数的时候,我们可以创建一个对象

上图包含set和get方法,也需要重新toString

如果我们什么都不传的话,就会默认初始化值

下面为我们自己填入的值

重命名

后端和前端在开发中,命名的想法不同,这时候我们就需要使用重命名

@RequestParam("name") String username 为重命名方式

这样我们就可以在想法不同的情况下,很容易就更改代码

传递数组

这里的数组,我们打印的时候要使用Arrays.toString()

传递集合

当我们使用list时,我们需要加一个注解 

@RequestParam(required = false) List<String> list

传递json数据

json是一个特殊的字符串,可以表示对象的字符串

我们传递json需要注解 @RequestBody Student student

从路径中获取参数

我们需要使用的注解  @PathVariable
http://www.xdnf.cn/news/357121.html

相关文章:

  • [css]纯css绘制三角形
  • MindSpore框架学习项目-ResNet药物分类-数据增强
  • HTML应用指南:利用POST请求获取全国德邦快递服务网点位置信息
  • C++中extern关键字详解:不同情况下的使用方式
  • Text Based Person Search 研究进展汇报:主要问题、数据集、未来方向
  • ATH12K驱动框架架构图
  • vue3 全局注册自定义指令,input聚焦失焦展示对应值
  • Java LocalDateTime类详解:高效处理日期时间
  • 面试题:Java集合框架高频面试题总结
  • 何时需要import css文件?怎么知道需要导入哪些css文件?为什么webpack不提示CSS导入?(导入css导入规则、css导入规范)
  • Nginx修改日志时间格式
  • WHAT - 用户访问产品个性化延迟问题和技术手段
  • 从投入产出、效率、上手难易度等角度综合对比 pytest 和 unittest 框架
  • 第三节:条件语句与循环:控制程序流程
  • 特殊配合力(SCA)作为全基因组关联分析(GWAS)的表型,其生物学意义和应用价值
  • MQTT:轻量级物联网通信协议详解
  • Vulnhub Lazysysadmin靶机攻击实战(一)
  • logback日志输出到项目运行目录
  • Git_idea界面进行分支合并到主分支详细操作
  • Elasticsearch内存管理与JVM优化:原理剖析与最佳实践
  • 两款Windows小工具,不收费还好用
  • 【网工第6版】第9章 网络管理
  • C语言实现小波变换去噪
  • 虚拟专用服务器(VPS)完全指南:从入门到选型
  • 红色大banner的wordpress免费模板
  • 【各种坐标系】
  • 学习笔记:黑马程序员JavaWeb开发教程(2025.3.31)
  • AI汽车时代的全面赋能者:德赛西威全栈能力再升级
  • k8s存储类型:emptyDir、hostPath、nfs、pvc及存储类storageclass的静态/动态创建pv
  • 从电动化到智能化,法雷奥“猛攻”中国汽车市场