请求映射路径的配置
- 请求映射路径的配置主要是通过@RequestMapping注解实现的
|-----------------|--------------------------|-------|
| 相关注解 | 作用 | 使用位置 |
| @RequestMapping | 设置控制器方法访问路径的资源,可以接收任何请求 | 方法和类上 |
| @GetMapping | 设置控制器方法访问路径的资源,可接收GET请求 | 方法和类上 |
| @PostMapping | 设置控制器方法访问路径的资源,可接收Post请求 | 方法和类上 |
请求数据的接收
参数的接收在JavaWeb后端SpringBoot专栏 已经进行了学习,此处就不再赘述。感兴趣可以去我主页对应专栏进行阅读。主页传送门:内容管理-CSDN创作中心
接收Restful风格的数据
什么是Restful风格?
-
Rest(表象化状态转变/表述性状态转变),在2000年被提出,基于HTTP,URI,xml,JSON等标准和协议,支持轻量级、跨平台、跨语言架构设计。是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请求头数据,接受指定名称的数据头
```java
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数据
- 关键代码如下
java
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