JavaWeb-7、Cookie、Session

实战指南:从零搭建ROS2 + Cartographer 2D激光SLAM系统 本文详细介绍了如何从零开始搭建ROS2与Cartographer结合的2D激光SLAM系统,涵盖环境准备、激光雷达驱动配置、Cartographer安装与参数调优等关键步骤。通过实战案例和常见问题解决方案,帮助开发者快速掌握激光雷达建图技术,提升机器人自主导航能力。 阅读详情

7、Cookie、Session

7.1、会话

会话:用户打开一个浏览器,点击了很多超链接,访问多个web资源,关闭浏览器,这个过程可以称之 为会话;

有状态会话:一个同学来过教室,下次再来教室,我们会知道这个同学,曾经来过,称之为有状态会 话;

你能怎么证明你是西开的学生?

你 西开

\1. 发票 西开给你发票

\2. 学校登记 西开标记你来过了

一个网站,怎么证明你来过?

客户端 服务端

​ \1. 服务端给客户端一个 信件,客户端下次访问服务端带上信件就可以了; cookie

​ \2. 服务器登记你来过了,下次你来的时候我来匹配你; seesion

7.2、保存会话的两种技术

cookie

  • 客户端技术 (响应,请求)

session

  • 服务器技术,利用这个技术,可以保存用户的会话信息? 我们可以把信息或者数据放在Session中!

常见应用:网站登录之后,你下次不用再登录了,第二次访问直接就上去了!

7.3、Cookie

image-20200727182425204

\1. 从请求中拿到cookie信息

\2. 服务器响应给客户端cookie

Cookie[] cookies = req.getCookies(); //获得Cookie
cookie.getName(); //获得cookie中的key
cookie.getValue(); //获得cookie中的vlaue
new Cookie("lastLoginTime", System.currentTimeMillis()+""); //新建一个cookie cookie.setMaxAge(24*60*60); //设置cookie的有效期
resp.addCookie(cookie); //响应给客户端一个cookie

cookie:一般会保存在本地的 用户目录下 appdata;

一个网站cookie是否存在上限!聊聊细节问题

  • 一个Cookie只能保存一个信息;
  • 一个web站点可以给浏览器发送多个cookie,最多存放20个cookie;
  • Cookie大小有限制4kb;
  • 300个cookie浏览器上限

删除Cookie;

  • 不设置有效期,关闭浏览器,自动失效;
  • 设置有效期时间为 0 ;

编码解码:

URLEncoder.encode("秦疆","utf-8")
URLDecoder.decode(cookie.getValue(),"UTF-8")

7.4、Session(重点)

image-20200727182644469

什么是Session:

  • 服务器会给每一个用户(浏览器)创建一个Seesion对象;
  • 一个Seesion独占一个浏览器,只要浏览器没有关闭,这个Session就存在;
  • 用户登录之后,整个网站它都可以访问!–> 保存用户的信息;保存购物车的信息…

image-20200727182722805

Session和cookie的区别:

  • Cookie是把用户的数据写给用户的浏览器,浏览器保存 (可以保存多个)
  • Session把用户的数据写到用户独占Session中,服务器端保存 (保存重要的信息,减少服务器资源的浪费)
  • Session对象由服务创建;

使用场景:

  • 保存一个登录用户的信息;
  • 购物车信息;
  • 在整个网站中经常会使用的数据,我们将它保存在Session中;

使用Session:

package com.kuang.servlet; import com.kuang.pojo.Person;
import javax.servlet.ServletException; import javax.servlet.http.*;
import java.io.IOException;
public class SessionDemo01 extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {

      //解决乱码问题
      req.setCharacterEncoding("UTF-8"); 
      resp.setCharacterEncoding("UTF-8"); 		  
      resp.setContentType("text/html;charset=utf-8");
      //得到Session
      HttpSession session = req.getSession(); 
      //给Session中存东西

      session.setAttribute("name",new Person("秦疆",1)); 
      //获取Session的ID

      String sessionId = session.getId();

      //判断Session是不是新创建 if (session.isNew()){

      resp.getWriter().write("session创建成功,ID:"+sessionId); }else {

      resp.getWriter().write("session以及在服务器中存在 了,ID:"+sessionId);
}

  //Session创建的时候做了什么事情;

  //Cookie cookie = new Cookie("JSESSIONID",sessionId); 
  //resp.addCookie(cookie);

  @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
        doGet(req, resp);
    }
}
//得到Session
HttpSession session = req.getSession();
Person person = (Person) session.getAttribute("name"); System.out.println(person.toString());
HttpSession session = req.getSession(); session.removeAttribute("name"); 
//手动注销Session
session.invalidate();

会话自动过期:web.xml配置

<!--设置Session默认的失效时间--> 
<session-config>
  <!--15分钟后Session自动失效,以分钟为单位-->
  <session-timeout>15</session-timeout> 
</session-config>

image-20200727183112264

ZooKeeper 实战:使用 Docker Compose 部署 ZooKeeper 集群 ZooKeeper是一个开源的分布式协调服务,用于管理大型分布式系统中的数据。它由Apache软件基金会提供,最初是Hadoop的一个子项目,但后来发展成为一个独立的顶级项目。ZooKeeper提供的一致性协调服务对于构建分布式应用和服务非常重要,特别是在需要精确的领导选举、配置管理、命名服务、分布式同步和提供分布式锁等功能时。 阅读详情

相关推荐

CentOS7上装不了最新Chrome?别折腾依赖了,试试这个老版本安装法(附103.0.5060.24 beta下载地址)

本文提供了在CentOS7上安装兼容版Chrome的详细指南,解决了因GLIBC版本限制导致的最新版Chrome无法安装的问题。推荐使用Chrome 103.0.5060.24 beta版本,并附有下载地址和完整安装步骤,包括禁用自动更新和配套工具安装,确保系统稳定性和功能完整性。

weixin_29289821的博客 569

JavaWeb系列7——cookie、session

🔥本篇概览:详细讲解了cookie、session的方方面面。🌈⭕🔥

做一个善良的人,做好自己的事,如果愿意,再发一份光。 1123

STM32_WS2811驱动

STM32的WS2811驱动

健身房 2842

JavaWeb(7:Cookie / Session)

目录 7、Cookie、Session 7.1 会话 7.2 保存会话的两种技术 7.3 cookie 7.4 Session(重点) 7、Cookie、Session 7.1 会话 会话:用户打开一个浏览器,点击了很多超链接访问多个web资源,关闭浏览器,这个过程可以称之为会话; 有状态会话:一个同学来过教室,下次再来教室,我们会知道这个同学,曾经来过,称之为有状态会话; 你如何怎么证明你是西南石油大学的学生? 一个网站如何证明你来过? 服务端给客户端一个信件,客户端下

weixin_53585549的博客 194

fins协议握手信号服务器响应,欧姆龙FinsTCP与FinsUDP协议解析 —— 利用Wireshark对报文逐字节进行解析详细解析附含报文模拟器等...

前言 – Fins欧姆龙这个协议网上极少有相关的模拟器、Tcp的这一块倒是有但是Udp的基本都是不可用1、 Fins协议结构也很简单 协议分为两种 一种tcp一种udp2、 Tcp比Udp的报文会多一层tcp的head头部3、 Udp回应报文在Wireshark中是解析不到(因为他按照UDP的格式去解那指定是解不到)好长时间没有更新过博客了、也比较懒= = 。一、Read(TCP)发包那么这个就很...

weixin_32491317的博客 4440

SAP PS项目结算实操:从CJ20N到CJ88,手把手搞定项目成本结转与凭证生成

本文详细解析SAP PS项目结算全流程,从CJ20N到CJ88的操作要点,涵盖成本归集、结算规则配置、结果分析及凭证生成等关键环节。特别针对FICO模块中的项目凭证流转问题提供实战解决方案,帮助财务人员规避常见配置错误,提升项目结算效率与准确性。

weixin_26833503的博客 816

7、JavaWeb-会话(cookie、Session)

会话字面意思:一次交流或交谈 在Web中,会话表示从浏览器打开某个网站,在这个网站中无论操作了什么,知道关闭浏览器,这一个过程,称之为一个会话。 怎么样算会话结束: 客户端关闭了 服务端销毁了 为什么要处理会话: 长期保持会话,无论用户关闭少次浏览器,这个会话都要存在; 比喻: 你昨天来了教室,我今天需要知道你昨天来了教室; 你留下一个标记,让我知道你来过 你告诉我你来这边,我需要记录你来了...

Princess_Li的博客 201

杰理JL701N V142的SDK实现双备份自定义OTA教程和代码分享

摘要 本文档详细介绍了基于JL701N SDK的UART OTA升级功能开发方案。该方案采用双备份(Dual Bank)机制,通过串口实现安全可靠的固件远程更新。核心特性包括:1) 双备份升级机制确保升级失败可回滚;2) CRC-16/XMODEM校验保障数据完整性;3) 灵活的传输控制,支持自定义波特率和数据包大小。文档提供了完整的系统架构、API接口说明、通信协议规范以及移植指南,适用于生产烧录、现场升级等多种场景。配套Python升级工具简化了升级流程,使开发人员能够快速实现固件更新功能。

qq_42014563的博客 278

JavaWeb笔记(7):Cookie/Session

·

mingyuli的博客 461

自动化控制软件:Beckhoff TwinCAT二次开发_(7).HMI开发基础

TwinCAT HMI是Beckhoff公司为TwinCAT自动化平台开发的专用HMI软件。Web技术基础:基于Web技术,支持HTML5、CSS3和JavaScript,可以轻松集成第三方库和框架。多平台支持:可以在多种设备上运行,包括PC、平板电脑和智能手机。高效开发:提供丰富的组件库和开发工具,简化开发过程。安全性:支持多种安全机制,确保数据和系统的安全性。可扩展性:支持自定义组件和脚本,满足不同应用场景的需求。Button:按钮组件,用于触发操作。Label:标签组件,用于显示文本信息。

2401_87715305的博客 985

华为od 面试手撕代码题【完成任务最少小时】

华为od 面试手撕代码题【完成任务最少小时】

MISAYAONE的博客 1582

JavaWeb(7):cookie和session

1.用户信息; 2.cookie; 2.session。

sadnjkjn的博客 176

iOS远程真机之WebDriverAgent 天坑记

一、WDA安装依赖报错:       这个东西神坑,我搞了一天都没找到解决方案,最后在appium讨论中发现,       解决方案是:       先定位到WebDriverAgent 所在路径$ cd /Users/XXXX/git/WebDriverAgent        然后运行:mkdir -p Resources/WebDriverAgent.bundle sh ./Scripts/b

甫式人生 7316

JavaWEB学习7-4_Cookie和Session会话跟踪

Cookie和Session与会话跟踪技术 一、自己的理解 会话跟踪,客户端与服务器的交互称为会话,一次会话可能发生多次请求,从第一个请求开始,以知道最后一个请求结束,整个会话结束。 会话跟踪就是,在会话中产生的数据要实现共享,称为会话跟踪 作用域,"数据"可以共享在不同请求之内,还是在页面内,还是在整个会话中,还是在服务器中的所有应用,有所区别就是作用域的意义 常用的会话跟踪技术就是cookie和session Http是短连接,一次请求走完就关闭连接(无状态),这样一来服务器并不知道下一次请求的是不是同

Sky_Coolssy的博客 359

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

JavaWeb 7-8学习总结(jsp,cookie,session,el,jstl)

7.1 jsp 1. 概念: Java Server Pages: java服务器端页面,本质上是一个Servlet 可以理解为:一个特殊的页面,其中既可以定义html标签,又可以定义java代码 2. JSP的脚本:JSP定义Java代码的方式 &amp;lt;% 代码 %&amp;gt;:定义的java代码,在service方法中。service方法中可以定义什么,该脚本中就可以定义什么。 &amp;lt;%...

有文化的博客 206

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

javaWeb学习总结(7)-关于session的实现:cookie与url重写

本文讨论的语境是java EE servlet。我们都知道session的实现主要两种方式:cookie与url重写,而cookie是首选(默认)的方式,因为各种现代浏览器都默认开通cookie功能,但是每种浏览器也都有允许cookie失效的设置。由于浏览器默认启动cookie功能,而且普通客户一般都不会取消cookie功能。久而久之,我们写代码的时候,也就不会在意session的具体实现,其...

weixin_34408717的博客 86

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

JavaWeb基础(7)----- 会话:Cookie和Session(二次整理)

回话技术 会话:浏览器和服务器之间的多次请求和响应。 为了实现一些功能 ,浏览器和服务器之间可能会产生多次的请求和响应,从浏览器访问服务器开始,到访问服务器结束(关闭浏览器、到了过期时间)。这期间产生的多次请求和响应加在一起就称之为浏览器和服务器之间的一次会话。 会话过程中所产生的一些数据,可以通过会话技术( Cookie和Session )保存。 Cookie Cookie :客户端会话管理技术 把要共享的数据保存到客户端。 每次请求时,把会话信息带到服务器端,从而实现多次请求的数据共享!

учёба 345

【JavaWeb-7】Cookie记住用户名、历史浏览记录与Session的自动系列化、购物车案例、验证码使用

1、Cookie是什么,这里不再详述。只介绍如何使用。——我们知道请求如果满足条件是会带着Cookie的,所以我们获取Cookie是用request。我们设置Cookie是用response。 public void doGet(HttpServletRequest request, HttpServletResponse response) throws Servle

小小的客栈 大大的江湖 2758

详述JavaWeb中Cookie

文章目录Cookie介绍Cookie运行原理Cookie的使用Cookie和Session的比较 Cookie介绍 cookie翻译为曲奇饼小甜点,在JavaWeb中是一种为了解决HTTP协议是无状态协议的会话跟踪技术。 Cookie运行原理 浏览器向服务器发起一次访问,服务器生成Cookie响应给浏览器,当浏览器再次访问的时候就会在请求中携带上次服务返回给Cookie,服务器根据用户访问携带的C...

zzxv587的博客 371

JavaWeb-WEB核心7 会话技术 理解什么是会话跟踪技术&掌握Cookie的使用&掌握Session的使用(钝化、活化)&完善用户登录注册案例的功能

今日目标对于这四个词,我们需要拆开来进行解释,首先要理解什么是,然后再去理解什么是:会话:用户打开浏览器,访问web服务器的资源,会话建立,直到有一方断开连接,会话结束。在一次会话中可以包含多次请求和响应。用实际场景来理解下会话,比如在我们访问京东的时候,当打开浏览器进入京东首页后,浏览器和京东的服务器之间就建立了一次会话,后面的搜索商品,查看商品的详情,加入购物车等都是在这一次会话中完成。思考:下图中总共建立了几个会话? 每个浏览器都会与服务端建立了一个会话,加起来总共是3个会话。会话跟踪:一种维护浏览器

shyboyandgirl的博客 253

JavaWeb 服务器与客户端储存

一,什么是会话: 一个会话就是浏览器与服务器之间的一次通话,包含浏览器与服务器之间的多次请求、响应过程 二,JSP内置对象session session的概念: Session在网络中被称为会话(服务端存储 session中的数据占运行内存)。 由于HTTP协议(超文本传输协议)是一种无状态协议,也就是当一个客户向服务器发出请求,服务器接收请求,并返回响应后,该连接就结束了,而服务器并不保存相关的信息。 为了弥补这一缺点,HTTP协议提供了Session。 通过Session可以在应...

m0_67333901的博客 444

javaweb-实验九补充练习--复盘

如果从cookie中读到了正确的用户名和密码,则说明用户曾经在login.jsp中选择了“记住我”,那么把从cookie中读到的用户名显示在页面中,而无需用户重新登录。当用户登录成功,且在login.jsp中选择了“记住我”,将用户名和密码在cookie中保存7天。(2)新建“it.servlet”包,在该包中新建java类,命名为“CommentServlet”。(4)在java包“it.servlet”中新建java类,命名为“LogoutServlet”。(3)新建JSP,命名为“welcome”。

qq_52495761的博客 950

第六周学习进度表

编程所用时间(包括上课时间) 20h 代码行数 3000 博客量 7篇 学习到的知识 javaweb中的很多新知识,session,cookie等等 转载于:https://www.cnblogs.com/tianzeyangblog/p/8298788.html...

weixin_33713503的博客 132

视频教程-IDEA版JavaWeb从入门到精通之项目第三阶段第10天-Java

IDEA版JavaWeb从入门到精通之项目第三阶段第10天 张长志技术全才、...

weixin_34501726的博客 354

JAVA web 学习计划

JavaWeb 的学习核心是—— 它的核心价值是为 Spring MVC、Spring Boot 打地基,不是让你用原生 Servlet 做生产级项目。结合你「Java 后端 + AI Agent」的目标,完全不用深耕老式 JSP 页面开发,重点吃透 Servlet 体系、会话机制、MVC 分层思想即可,全程 5~7 天就能过完核心内容。

2501_93775482的博客 394

【JavaWeb】cookie和session的区别与联系

一、Cookie

yuxiangdeming的博客 461
上一篇: JavaWeb-6Servlet
下一篇: Mybatis学习
maby_
博客等级 码龄19年 15粉丝 101原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值