SpringMVC的请求处理-CSDN博客
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
请求映射路径的配置
- 请求映射路径的配置主要是通过@RequestMapping注解实现的
-
相关注解 作用 使用位置 @RequestMapping 设置控制器方法访问路径的资源可以接收任何请求 方法和类上 @GetMapping 设置控制器方法访问路径的资源可接收GET请求 方法和类上 @PostMapping 设置控制器方法访问路径的资源可接收Post请求 方法和类上
请求数据的接收
参数的接收在JavaWeb后端SpringBoot专栏已经进行了学习此处就不再赘述。感兴趣可以去我主页对应专栏进行阅读。主页传送门内容管理-CSDN创作中心
-
接收Restful风格的数据
-
什么是Restful风格
- Rest表象化状态转变/表述性状态转变在2000年被提出基于HTTPURIxmlJSON等标准和协议支持轻量级、跨平台、跨语言架构设计。是Web服务的一种新网络应用程序的设计风格和开发方式。
- 常用规则
- 用URI表示某个模块资源资源名称为名词
-
模块 URI资源
用户模块user http://localhost/user 商品模块product http://localhost/product 账户模块account http://localhost/account 日志模块log http://localhost/log
- 用HTTP响应状态码表示结果国内常用的响应包括三部分状态码、状态信息、响应数据
- Restful风格参数是通过路径参数进行传递的具体可以参照文章请求响应-路径参数的接收_保持敬畏的博客-CSDN博客
-
接收上传文件
- 接收上传文件的数据文件上传的表单有一定的要求如下
- 表单的提交方式必须是POST
- 表单的enctype属性必须是multipart/form-data
- 文件上传需要name属性
- 具体可以参照文章SpringBoot案例-文件上传_保持敬畏的博客-CSDN博客
- 虽然使用了不同的框架但是对于原理介绍是一样的。
-
获取headers头信息和cookie信息
- 接收Http请求头数据接受指定名称的数据头
-
package com.example.Controller; import com.example.Service.Service01; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestHeader; import org.springframework.web.bind.annotation.RequestMapping; import java.util.Map; @Controller public class Controller01 { @Autowired private Service01 service01; @RequestMapping("/show") // 获取指定请求头信息 public String show(@RequestHeader("Accept-Encoding") String requestHeader) { System.out.println(requestHeader); return "/index.jsp"; } @RequestMapping("/show1") // 获取所有请求头信息 public String show1(@RequestHeader Map<String, String> requestHeader) { requestHeader.forEach((k, v) -> { System.out.println(k + "====" + v); }); return "/index.jsp"; } }
- 启动web服务器后就可以请求对应的路径
- 请求show路径终端输出
- 请求show1
- 终端输出
- 获取客户端携带的Cookie数据
- 关键代码如下
-
package com.example.Controller; import com.example.Service.Service01; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.CookieValue; import org.springframework.web.bind.annotation.RequestMapping; @Controller public class Controller01 { @Autowired private Service01 service01; @RequestMapping("/show") // 获取Cookie信息 public String show(@CookieValue(value = "JSESSIONID", defaultValue = "") String requestHeader) { System.out.println(requestHeader); return "/index.jsp"; } }
后天再来p124