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

【JavaEE】_Spring MVC项目之建立连接

目录

1. Spring MVC程序编写流程

2. 建立连接

2.1 @RequestMapping注解介绍

2.2 @RequestMapping注解使用

2.2.1 仅修饰方法

2.2.2 修饰类与方法

2.3 关于POST请求与GET请求

2.3.1 GET请求

2.3.2 POST请求

2.3.3 限制请求方法


1. Spring MVC程序编写流程

1. 建立连接(客户端和服务器);

2.(浏览器)客户端向服务器发送请求;

3. 服务器向客户端(浏览器)返回响应;

2. 建立连接

在Spring MVC中,使用@RequestMapping实现URL路由映射,完成浏览器对程序的连接;

2.1 @RequestMapping注解介绍

1. @RequestMapping是Spring Web MVC应用程序中最常被使用的注解之一,

用于注册接口的路由映射,

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

2. 路由映射:

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

2.2 @RequestMapping注解使用

@RequestMapping注解既可以修饰类,也可以修饰方法;

2.2.1 仅修饰方法

当前类没有@RequestMapping修饰,故而URL只需方法路径:

@RequestMapping功能如下:

2.2.2 修饰类与方法

访问地址为:类的路径+方法路径

现将.java文件修改为:

package com.example.demo.controller;import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@RequestMapping("/Hi")
@RestController
public class HelloController {@RequestMapping("/sayHi")public String sayHi(){return "Hi, SpringBoot";}@RequestMapping("/sayHello")public String sayHello(){return "Hello ,SpringBoot";}
}

重新启动服务器,此时要填写的URL为:

注:对于注解,可以不以 / 开头,但在开发过程中建议采用标准写法,以 / 开头;

2.3 关于POST请求与GET请求

2.3.1 GET请求

 使用浏览器访问:

使用Fiddler抓包,查看请求详情:

可见@RequestMapping支持GET请求;

2.3.2 POST请求

使用postman构造一个POST请求并发送:

得到的响应为:

可见@RequestMapping也支持POST请求;

综上:@RequestMapping既支持GET请求,也支持POST请求

注:并且,@RequestMapping是支持所有的方法,包括PUT,DELETE等等,

关于HTTP请求方法,可以查看本专栏HTTP请求首行一文,链接如下:

【JavaEE】_HTTP请求首行-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/m0_63299495/article/details/136115813

2.3.3 限制请求方法

如果服务器需要限制客户端发送的请求的方法,也可以使用@RequestMapping注解method属性进行限制;

现假设限定客户端请求必须使用GET请求:

.java文件内容如下:

package com.example.demo.controller;import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;@RequestMapping("/Hi")
@RestController
public class HelloController {@RequestMapping(value = "/sayHi",method = RequestMethod.GET)public String sayHi(){return "Hi, SpringBoot";}@RequestMapping("/sayHello")public String sayHello(){return "Hello ,SpringBoot";}
}

构造一个POST请求并发送: 

得到的响应为:

状态码为405,表示方法不允许;

关于响应状态码,可以查看本专栏HTTP响应一文,链接如下:

【JavaEE】_HTTP响应-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/m0_63299495/article/details/136141244注:对于@RequestMapping注解,如果没有写属性名时,默认属性为value/path,即路径;

如果有多个属性,则需加上属性名;

后续将介绍Spring MVC项目关于请求与响应。

http://www.lryc.cn/news/309637.html

相关文章:

  • 【JavaEE进阶】 Spring AOP源码简单剖析
  • Redis--内存回收机制详解
  • win安装卸载python3.13
  • APIFox-自动获取登录状态操作
  • 【NDK系列】Android tombstone文件分析
  • CentOS7 Hive2.3.8安装
  • 代码随想录算法训练营第四十四天 完全背包 、零钱兑换 II 、组合总和 Ⅳ
  • 【经验】vscode 鼠标拖曳不能选中整行文字,只能选中纵向矩形范围
  • Redis--事务机制的详解及应用
  • 路由器端口映射如何配置?
  • 力扣34. 在排序数组中查找元素的第一个和最后一个位置(二分查找)
  • 【每日一题】3.2 求逆序对
  • NTP时间源服务器(NTP网络时钟)助力智慧医院数字化
  • Benchmark学习笔记
  • Linux中的动静态库
  • C/C++基础语法
  • Home Assistant:基于Python的智能家居开源系统详解
  • 使用vscode进行简单的多文件编译
  • Python实现PPT演示文稿中视频的添加、替换及提取
  • Mysql学习之MVCC解决读写问题
  • Linux下如何生成coredump文件
  • eltable 合计行添加tooltip
  • Secure Boot(安全启动)
  • 大厂面试经验:如何对加密后的数据进行模糊查询操作
  • 修改docker默认存储位置【高版本的docker】
  • CleanMyMac X2024免费Mac电脑清理和优化工具
  • 吴恩达机器学习全课程笔记第四篇
  • 大数据分析师常用函数
  • MySQL 主从读写分离入门——基本原理以及ProxySQL的简单使用
  • ROS2从入门到精通:理论与实战