JavaEE进阶3

传递数组:

当我们请求中,同一个参数有多个时,浏览器就会帮我们封装成一个数组

用逗号进行分割也是可以的(有的浏览器不能直接使用逗号,需要我们去转码)

传递集合:

HTTP 状态码(不是后端自定义的)

2XX:成功

3XX:重定向

4XX:客户端错误

5XX:服务器错误

业务状态码:HTTP响应成功的情况下,业务的响应结果分为不同的状态

比如用户登录:

1.密码正确=>返回200

2.密码错误=>返回-1

这个状态码是后端定义的

接口指 API 就是应用程序提供了哪些服务,接口如果对应到代码上,通常是指方法

接下来我们讲工作中用来传递数据的方法传递JSON,上面这些方法都不怎么用,但是还是需要知道

JSON 本质上是一个字符串,表示对象的字符串,我们通常称之为 JSON 字符串,JSON 字符串和对象是可以互相转换的

JSON是由键值对组成的

下面是 JSON 和对象之间的转换

接下来我们讲如何传递 JSON 对象

需要用到 @RequestBody

接下来我们学习获取 URL 中的参数 @PathVariable

不能用上面的方法来获取,因为这是在 URL 中的,而不在后面的查询字符串中,也不在请求正文中......

获取这串数字

也可以取到多个数据

可以获取一个,也可以获取多个,但是我们主要是要记得格式和顺序需要一一对应

并且你要获取几个就要写几个数据,如果少写了就会报错

接下来我们来讲上传文件 @RequestPart

在postman 记得如下设置

然后就能在idea看到 cat.jpg 了

接下来我们就可以使用该文件了,我们将这个图片放进目录 D:/temp/ ,一开始这个目录是空的

然后我们再用 postman 发送请求

然后就能在目录 D:/temp/ 下看到 cat.jpg了

Cookie 和 Session

Http 是无状态的,Http 没有记忆功能,现在请求和过一会请求,同样的请求参数,得到的结果是一样的(处理逻辑是一样的,而不是指数据)

Cookie 是客户端机制

Session 是服务端机制

举个例子,假如保安没有记忆功能,看到的每一个学生都是一样的,但是我们需要保安知道我们是这个学校的学生,这个时候学校给我们发了学生证,保安就会放我们进校,学生证是学生拿着的,学生证就可以认为是 Cookie

学生证是我们入学的时候登记了我们这种信息然后获得的,记录了姓名班级电话学号什么的,虽然我们可能没带学生证,但是把学号报给保安,保安在服务器一查就能知道我是本校生,就能让进校,这是Session 的机制

我们先来了解一下会话是什么意思?

在计算机领域,会话是一个客户和服务器之间的不中断的请求响应,对于客户的每个请求,服务器能够识别出请求来自于同一个用户,当一个未知的客户向 web 应用程序发送了第一个请求时就开始了一个会话,当客户明确表示结束会话或者服务器在一个时限内没有接收到客户的任何请求时,会话就结束了

相关推荐
yoi啃码磕了牙几秒前
Unity—Localization 多语言
java·数据库·mysql
跟着珅聪学java2 分钟前
在Java中判断Word文档中是否包含表格并读取表格内容,可以使用Apache POI库教程
java·开发语言·word
Kuo-Teng25 分钟前
LeetCode 73: Set Matrix Zeroes
java·算法·leetcode·职场和发展
王元_SmallA28 分钟前
服务器公网IP、私网IP、弹性IP是什么?区别与应
java·后端
葵续浅笑1 小时前
LeetCode - 杨辉三角 / 二叉树的最大深度
java·数据结构·算法·leetcode
装不满的克莱因瓶1 小时前
【Java架构师】各个微服务之间有哪些调用方式?
java·开发语言·微服务·架构·dubbo·restful·springcloud
N 年 后1 小时前
cursor和传统idea的区别是什么?
java·人工智能·intellij-idea
CodeLongBear1 小时前
从Java后端到Python大模型:我的学习转型与规划
java·python·学习
Miraitowa_cheems2 小时前
LeetCode算法日记 - Day 94: 最长的斐波那契子序列的长度
java·数据结构·算法·leetcode·深度优先·动态规划
Zz_waiting.2 小时前
统一服务入口-Gateway
java·开发语言·gateway