ToB企服应用市场:ToB评测及商务社交产业平台

标题: 【JavaEE】Spring Web MVC [打印本页]

作者: 水军大提督    时间: 2024-11-29 15:53
标题: 【JavaEE】Spring Web MVC

一、Spring Web MVC简介

官方文档介绍:
   Spring Web MVC is the original web framework built on the Servlet API and has been included in the Spring Framework from the very beginning. The formal name, “Spring Web MVC,” comes from the name of its source module (spring-webmvc), but it is more commonly known as “Spring MVC”.
    Parallel to Spring Web MVC, Spring Framework 5.0 introduced a reactive-stack web framework whose name, “Spring WebFlux,” is also based on its source module (spring-webflux). This chapter covers Spring Web MVC. For reactive-stack web applications, see Web on Reactive Stack.
    For baseline information and compatibility with Servlet container and Jakarta EE version ranges, see the Spring Framework Wiki.
  翻译:
   Spring Web MVC 是基于 Servlet API 构建的原始 Web 框架,从一开始就包含在 Spring 框架中。正式名称“Spring Web MVC”来自其源模块的名称 (spring-webmvc),但更常见的名称是“Spring MVC”。
    与 Spring Web MVC 并行,Spring Framework 5.0 引入了一个反应式堆栈 Web 框架,其名称“Spring WebFlux”也基于其源模块 (spring-webflux)。本章介绍 Spring Web MVC。对于反应式堆栈 Web 应用程序,请参阅反应式堆栈上的 Web。
    有关 Servlet 容器和 Jakarta EE 版本范围的基线信息和兼容性,请参阅 Spring Framework Wiki。
  servlet:
   Servlet 是⼀种实现动态⻚⾯的技能. 准确来讲Servlet是⼀套 Java Web 开发的规范,或者说是⼀套 Java Web 开发的技能尺度. 只有规范并不能做任何事情,必须要有⼈去实现它. 所谓实现 Servlet 规范,就是真正编写代码去实现 Servlet 规范提到的各种功能,包括类、⽅法、属性等.
Servlet 规范是开放的,除了 Sun 公司,其它公司也可以实现 Servlet 规范,⽬前常⻅的实现了
Servlet 规范的产品包括 Tomcat、Weblogic、Jetty、Jboss、WebSphere等,它们都被称
为"Servlet 容器". Servlet 容器⽤来管理程序员编写的Servlet 类.
  1.1 MVC简介

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

1.2 Spring MVC

MVC 是⼀种架构计划模式, 也是⼀种头脑, ⽽ Spring MVC 是对 MVC 头脑的具体实现.
除此之外, Spring MVC还是⼀个Web框架.
总结来说,Spring MVC 是⼀个实现了MVC 模式的 Web 框架.
   
  

1.3 @RequestMapping注解

@RequestMapping 是Spring Web MVC 应⽤程序中最常被⽤到的注解之⼀,它是⽤来注册接⼝的
路由映射的.
表⽰服务收到请求时, 路径为 /sayHi 的请求就会调⽤ sayHi 这个⽅法的代码.
路由映射:
   当⽤⼾访问⼀个 URL 时, 将⽤⼾的请求对应到程序中某个类的某个⽅法的过程就叫路由映射.
  1.3.1 利用

@RequestMapping 既可修饰类,也可以修饰⽅法 ,当修饰类和⽅法时,访问的地址是类路径 + ⽅法路径.
  1. @RestController
  2. @RequestMapping("/user")
  3. public class UserController {
  4.     @RequestMapping("/hello")
  5.     public String hello() {
  6.         return "hello Spring";
  7.     }
  8.    
  9. }
复制代码
此时访问的就是:http://127.0.0.1:8080/user/hello
路径命名:
   @RequestMapping 的URL 路径最前⾯加不加 / (斜杠)都可以, Spring程序启动时, 会进⾏判断,如果前⾯没有加 / , Spring会拼接上⼀个 / ,但是风俗加上。
  1.3.2 @RequestMapping的请求设置

@RequestMapping支持全部请求
指定请求⽅法类型:
我们可以显⽰的指定@RequestMapping 来接收POST的情况,如下所⽰:
1.3.2.1 方法1

   情势:在注解中value设置为路径,method设置为需要的请求,可以是数组。
  1. @RequestMapping(value = 路径, method = {RequestMethod.POST, 请求2})
复制代码
  1. @RestController
  2. @RequestMapping("/user")
  3. public class UserController {
  4.     @RequestMapping(value = "/hello", method = RequestMethod.POST)
  5.     public String hello() {
  6.         return "hello Spring";
  7.     }
  8. }
复制代码
再次利用欣赏器访问就会报错:报客户端的错误,因为我们发的请求方式错误

当我们利用Postman发送POST请求就可以成功。
1.3.2.2 方法2

直接利用对应的请求的注解即请求+Mapping。
  1. @RestController
  2. public class UserController {
  3.     @PostMapping (value = "/hello")
  4.     public String hello() {
  5.         return "hello Spring";
  6.     }
  7. }
复制代码
二、Postman介绍

Postman就是专门测试后端代码的,可以发送不同的请求。
下载链接:https://www.postman.com/downloads/
2.1 创建请求


2.2 界面如下:


2.3 传参介绍

平凡传参, 就是通过查询字符串来传参。
URL结构:

Postman通过这个板块传参:


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4