SpringMVC学习笔记二(获取Cookies、Session和Header、IDEA热部署)

目录

一、一些前置知识 

二、SpringMVC获取cookies和session

获取cookies和header

 获取session

三、SpringMVC热部署

添加框架支持

settings配置开启自动热部署

开启运行中热部署: 

注意:


 

一、一些前置知识 

上一篇博客了解了SpringMVC是什么,以及获取参数的几种方式,那么接下来我们就来进一步的了解我们SpringMVC是如何获取Cookies和Session的。

首先我们要知道cookies是针对客户端来说的,而session则是针对服务器来说的。我们的再浏览器里所存的cookies并没有保存用户的登录信息,用户具体的登录信息(用户名,密码)是保存在服务器的session中的。为了安全,我们浏览器的cookies里面存的仅仅只是服务器的session的一个钥匙——sessionId。

当我们的登录网页的时候,服务器就是根据请求中的cookies中存的sessionId来判断当前用户是否登录——cookies中存的sessionId和服务器session中的相匹配。

当然了一开始,浏览器也是没有cookies的,当用户登录后就用户真正的信息放到了服务器的session中(安全),服务器同时就会针对该次会话生成一个凭证——sessionId,并以响应的方式——setCookies把该sessionId存储到浏览器中的cookies中。

当我们访问一个网站下的任意接口的时候,浏览器都会把当前浏览器所存的所有的cookies传给后端,因为http请求是无状态的。 

二、SpringMVC获取cookies和session

获取cookies和header

SpringMVC学习笔记二(获取Cookies、Session和Header、IDEA热部署)_第1张图片

更简便的获取header
SpringMVC学习笔记二(获取Cookies、Session和Header、IDEA热部署)_第2张图片

  

 获取session

传统方法(servlet)

SpringMVC学习笔记二(获取Cookies、Session和Header、IDEA热部署)_第3张图片

 SpringMVC学习笔记二(获取Cookies、Session和Header、IDEA热部署)_第4张图片

更加简便的方法(通过注解)SpringMVC学习笔记二(获取Cookies、Session和Header、IDEA热部署)_第5张图片

 SpringMVC学习笔记二(获取Cookies、Session和Header、IDEA热部署)_第6张图片

一些补充:

SpringMVC学习笔记二(获取Cookies、Session和Header、IDEA热部署)_第7张图片

 SpringMVC学习笔记二(获取Cookies、Session和Header、IDEA热部署)_第8张图片

 


三、SpringMVC热部署

添加框架支持

SpringMVC学习笔记二(获取Cookies、Session和Header、IDEA热部署)_第9张图片

 

SpringMVC学习笔记二(获取Cookies、Session和Header、IDEA热部署)_第10张图片

 SpringMVC学习笔记二(获取Cookies、Session和Header、IDEA热部署)_第11张图片

 

settings配置开启自动热部署

要想使得完全开启热部署——settings配置两次:当前项目、新创建的项目

当前项目的热部署配置: 

SpringMVC学习笔记二(获取Cookies、Session和Header、IDEA热部署)_第12张图片

 新项目的热部署配置:

SpringMVC学习笔记二(获取Cookies、Session和Header、IDEA热部署)_第13张图片

开启运行中热部署: 

什么意思呢:就是说当你的项目正在运行的时候,你更改了项目代码,IDEA此时也会自动帮你重新编译。如果仅仅完成以上两步,我们那个如果是在项目运行时候更改了代码——热部署是不起效果的。

IDEA2021.2之后版本的配置方法:

SpringMVC学习笔记二(获取Cookies、Session和Header、IDEA热部署)_第14张图片

注意:

如果 你使用的是社区版IDEA,那么刚刚我们所配置的热部署只用在debug模式下才生效。

所谓热部署,其实就是IDEA感知到你的代码发生了变动,经过三五秒的延迟,IDEA自动帮你重新加载运行了项目。

如果你进行了上述操作后,发现当前项目的热部署没有生效,不妨再新建一个项目试试。

你可能感兴趣的:(JavaEE进阶,学习,java,前端)