SpringMVC(6) :阶段总结
文章目录
- [SpringMVC(6) :阶段总结](#SpringMVC(6) :阶段总结)
- [1. 请求连接,传递参数](#1. 请求连接,传递参数)
- [2. cookie 和 session](#2. cookie 和 session)
- 3.总结:
1. 请求连接,传递参数
说明:下面的代码,你需要自己去写。
使用 @RequestMapping 定义好 资源路径(类路径 + 方法路径),然后自己使用 postman 进行访问,测试。
1.1 建立连接@RequestMapping
我们通过 @RequestMapping 设置资源路径,建立连接。

资源路径:类路径 + 方法路径
图中的 "/r1" 默认传递给 @RequestMapping 的 value属性。
@RequestMapping 支持所有的请求方式。
我们可以使用 @POSTMapping 或 @GETMapping 等等,来指定一个请求方式。
@RequestMapping 可以手动设置多个请求方式

图中这个 m6 方法,支持 GET,POST 请求方法。
1.2传递参数
传递参数,涉及到多个:
- 传递一个参数
- 传递两个参数
- 传递多个参数(传递一个对象)
- 传递一个数组
- 传递 Integer 和 int 类型
- 参数重命名(参数绑定)@RequestParam
- 传递集合 @RequestParam
- 传递 JSON
@RequestBody - 上传文件(文件名重命名 @RequestPart( ))
其中,传递 Integer 和 int 类型 时,更推荐使用 Integer ,因为它有默认值,null
int类型,不是类的成员变量,没有默认值,是必传参数。
参数绑定,设计一个注解:@RequestParam
@RequestParam() :参数重命名,也叫做参数绑定 ,把前端的参数,绑定给后端的某一个参数,并赋值了。
传递集合,也需要 @RequestParam 注解。
客户端传递多个字符串数据,默认是以 数组 方式,传递给服务器的。
@RequestParam ,这个注解,就是把 数组,绑定给 集合 了
传递 JSON,涉及到一个新的注解:@RequestBody
@RequestBody 这个注解表示:我们后端代码要接收的数据,是一个json对象。
@RequestBody的作用是:将请求体中的数据绑定到方法的参数上,通常用于接收前端发送的 JSON 或 XML 格式的数据。
上传文件,使用 MultipartFile 类进行接收。
后端代码,文件名 可以 重命名,这里需要用一个新的注解:@RequestPart( ),括号里面,填写一个和发送方相同的参数名。
@RequestPart( )注解
@RequestPart 注解用于处理 multipart/form-data 表单提交请求的方法上。它适用于复杂的请求域(如 JSON、XML) ,并且支持 MultipartFile(文件) 类型的请求参数。

总结:
实际开发中,传递 JSON 的频率是最高的,其次是传递对象,最后是 单个参数。
1.3 获取参数 @PathVariable
从 URL 中获取参数。
获取参数,可以获取一个,获取多个。
涉及到一个新的注解:@PathVariable
@PathVariable:路径变量 和字⾯表达的意思⼀样,这个注解主要作⽤在请求URL路径上的数据绑定
当你的URL路径上的数据中的{ }包含的变量名,和使用 @PathVariable注解 修饰的变量名一致,就可以获取到URL路径上的参数。
@PathVariable需要注意的点
- 默认情况下 ,
@PathVariable的参数名需要与 URI 模板中的占位符名称一致。 @PathVariable默认是必填 的。可以通过修改取消默认必填(required = false)
获取参数,现在的开发中,用的不多。
了解有这个东西,之后需要使用的时候,查一下怎么用就行。
2. cookie 和 session
- Cookie 是 客户端 保存用户信息的⼀种机制。
- Session 是 服务器端 保存用户信息的⼀种机制。
- Cookie 和 Session 之间主要是通过 SessionId 关联起来的,SessionId 是 Cookie 和 Session 之间的 桥梁
- Cookie 和 Session 经常 会在⼀起配合使用。但是不是必须 配合。
- 完全可以用 Cookie 来保存⼀些数据在客户端。这些数据不⼀定是用户身份信息,也不⼀定是 SessionId
- Session 中的 sessionId 也不需要非得通过 Cookie/Set-Cookie 传递,比如通过URL传递。
3.总结:
这篇博客,主要就是总结了一下,前面学过的东西,包括这些博客:
- Spring框架:Spring程序快速上手
- SpringMVC(1)初识MVC
- SpringMVC(2)传入请求参数
- SpringMVC(3)传递 json
- SpringMVC(4)获取参数,上传文件
- SpringMVC(5) Cookie和Session
最后,如果这篇博客能帮到你的,请你点点赞,有写错了,写的不好的,欢迎评论指出,谢谢!