入门JavaWeb之 Session 篇

Session:

服务器会给每个用户(浏览器)创建一个 Session 对象

一个 Session 独占一个浏览器,只要浏览器没有关闭,这个 Session 就存在

代码如下:

package com.demo.cookie;import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;public class Session extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//解决中文乱码req.setCharacterEncoding("UTF-8");resp.setCharacterEncoding("UTF-8");resp.setContentType("text/html");//得到SessionHttpSession session = req.getSession();//给Session中存东西session.setAttribute("name","hhh");//获取Session的IDString id = session.getId();//判断Session是否是新创建的if (session.isNew()){resp.getWriter().write("Session创建,ID:"+id);}else {resp.getWriter().write("Session已经在服务器存在,ID:"+id);}}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);}
}

web.xml 注册:

  <servlet><servlet-name>se</servlet-name><servlet-class>com.demo.cookie.Session</servlet-class></servlet><servlet-mapping><servlet-name>se</servlet-name><url-pattern>/se</url-pattern></servlet-mapping>

运行后查看结果

应用程序存入 SessionID

请求头存入 SessionID

注销 Session:

protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {HttpSession session = req.getSession();session.removeAttribute("name");//手动注销Sessionsession.invalidate();}

进入注销页再进入 SessionID 页,SessionID 改变

还可以设置 Session 默认失效时间

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

Session 与 Cookie 的区别:

1. Cookie 是把用户的数据写给用户的浏览器,浏览器保存,可以保存多个

2. Session 把用户的数据写到用户独占 Session 中,服务器端保存(保存重要的信息,减少服务器资源的浪费)

3. Session 对象由服务器创建

服务器中的 Session 可以存东西,客户端向服务器发起请求,将登记一个 Session

用户拿到的是 SessionID,每个用户唯一

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/36029.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WPF/C#:如何实现拖拉元素

前言 在Canvas中放置了一些元素&#xff0c;需要能够拖拉这些元素&#xff0c;在WPF Samples中的DragDropObjects项目中告诉了我们如何实现这种效果。 效果如下所示&#xff1a; 拖拉过程中的效果如下所示&#xff1a; 具体实现 xaml页面 我们先来看看xaml&#xff1a; <…

基于稀疏矩阵方法的剪枝压缩模型方案总结

1.简介 1.1目的 在过去的一段时间里&#xff0c;对基于剪枝的模型压缩的算法进行了一系列的实现和实验&#xff0c;特别有引入的稀疏矩阵的方法实现了对模型大小的压缩&#xff0c;以及在部分环节中实现了模型前向算法的加速效果&#xff0c;但是总体上模型加速效果不理想。所…

动手学深度学习(Pytorch版)代码实践 -计算机视觉-39实战Kaggle比赛:狗的品种识别(ImageNet Dogs)

39实战Kaggle比赛&#xff1a;狗的品种识别&#xff08;ImageNet Dogs&#xff09; 比赛链接&#xff1a;Dog Breed Identification | Kaggle 1.导入包 import torch from torch import nn import collections import math import os import shutil import torchvision from…

IaaS,PaaS,SaaS理解

目前主流的IaaS&#xff0c;PaaS&#xff0c;SaaS产品 一、简述应用方案 这里借用汽车的例子对IaaS、PaaS、SaaS的解释进一步阐述三者的区别。 假设你需要出去外出使用交通工具&#xff0c;我们有四种的方案&#xff1a; On-premise&#xff08;本地部署服务&#xff09; 自己…

【AI绘画】关于AI绘画做副业,你需要知道的事

前言 AI绘画是一种新兴的艺术形式&#xff0c;它利用人工智能技术来创造出各种各样的艺术作品。随着人工智能技术的不断发展&#xff0c;AI绘画已经成为了一种非常有前途的副业&#xff0c;可以帮助人们赚取额外的收入。下面是一些利用AI绘画副业方法。 1、利用AI绘画技术创作…

Java基础知识-线程

Java基础知识-线程 1、在 Java 中要想实现多线程代码有几种手段&#xff1f; 1. 一种是继承 Thread 类 2. 另一种就是实现 Runnable 接口 3. 最后一种就是实现 Callable 接口 4. 第四种也是实现 callable 接口&#xff0c;只不过有返回值而已 2、Thread 类中的 start() 和 …

JAVA课设必备环境配置 教程 JDK Tomcat配置 IDEA开发环境配置 项目部署参考视频 若依框架 链接数据库格式注意事项

JAVA环境配置 https://blog.csdn.net/xhmico/article/details/122390181 JAVA环境配置 前置条件&#xff1a;JDK安装 在开始配置Java环境之前&#xff0c;确保已经下载并安装了Java Development Kit (JDK)。JDK包含了Java编译器、Java虚拟机&#xff08;JVM&#xff09;以及…

微信公众号写作时必备的AI提示词(也称为指令或Prompt)

猫头虎 &#x1f42f; 微信公众号写作时必备的AI提示词&#xff08;也称为指令或Prompt&#xff09; &#x1f389; 大家好&#xff0c;我是猫头虎&#xff0c;科技自媒体博主。今天&#xff0c;我们来聊聊如何利用AI提示词&#xff0c;打造出爆款的微信公众号文章。&#x1…

Win10扩充C盘(把其他盘存储空间分给C盘)

C盘虽然没有安装任何软件&#xff0c;但无奈安装某些软件&#xff08;例如VS&#xff0c;QuarC等&#xff09;总会占用C盘容量&#xff0c;且C盘内存很小&#xff08;只有60G左右&#xff09;&#xff0c;看着D盘的三四十空闲内存&#xff0c;决定把D盘内存分给C盘30G&#xff…

css持续学习

一、样式层叠 当一个css样式发生冲突时&#xff0c;比如多处给一个字体设置了不同的颜色&#xff0c;这个时候就需要样式层叠了&#xff0c;它会进行三种比较 比较重要性 重要性从高到低&#xff1a; 1.带有 important 的作者样式&#xff08;作者样式就是开发者写的样式&…

【Red Hat 7.9---详细安装Oracle 11g】---图形化界面方式

原文&#xff1a;https://blog.csdn.net/qq_41840843/article/details/131198718?spm1001.2014.3001.5501 &#x1f53b; 一、安装前规划 规划项(本环境)描述操作系统版本Red Hat Enterprise Linux Server release 7.9 (Maipo)主机名db-oracle数据库版本Oracle 11gIp规划192.…

【毛毛虫案例-重力 Objective-C语言】

一、接下来,我们给这个毛毛虫,添加一下重力 1.把我们之前的代码,复制粘贴一份儿,改个名字,叫做:17-毛毛虫案例-重力, 重力的话,实际上,就比较简单了啊,那我们重力的话,去添加的时候,我也要在外面,去添加, 重力的话,叫做啥,UIGravityBehavior,啊, UIGravity…

Thinkphp/Laravel高校竞赛管理系统的设计与实现_9pi7u

高校竞赛管理&#xff0c;其工作流程繁杂、多样、管理复杂与设备维护繁琐。而计算机已完全能够胜任高校竞赛管理工作&#xff0c;而且更加准确、方便、快捷、高效、清晰、透明&#xff0c;它完全可以克服以上所述的不足之处。这将给查询信息和管理带来很大的方便&#xff0c;从…

时序约束(一):时钟的约束

目录 一、时钟约束的目的 二、约束工程项目 三、主时钟和生成时钟 四、主时钟约束 五、生成钟约束 一、时钟约束的目的 之前的文章对时序分析的基本原理做了介绍&#xff0c;我们会发现时序分析离不开时钟信号。对于时序分析工具来说同样如此&#xff0c;分析工具需要我…

【漏洞复现】用友GRP-U8——SQL注入

声明&#xff1a;本文档或演示材料仅供教育和教学目的使用&#xff0c;任何个人或组织使用本文档中的信息进行非法活动&#xff0c;均与本文档的作者或发布者无关。 文章目录 漏洞描述漏洞复现测试工具 漏洞描述 用友GRP-U8是一款企业管理软件&#xff0c;其系统dialog_moreUs…

财务RPA案例研究——分析成功的财务RPA实施案例

现代社会正加速向数字时代转型&#xff0c;数字技术以崭新的模式全面融入各行业领域。为顺应新一轮科技革命和产业变革趋势&#xff0c;越来越多的企业不断深化应用大数据、云计算、人工智能等新一代信息技术&#xff0c;积极迎接数字化转型&#xff0c;而RPA技术由于能够以自动…

常用组件详解(二):torch.nn.Flatten、torch.flatten()

文章目录 torch.nn.Flattentorch.flatten() 官方API文档&#xff1a;点击跳转。torch.nn.Flatten是Pytorch提供的类&#xff0c;常用于将输入数据进行展平&#xff0c;而torch.flatten()函数与之功能相同。 torch.nn.Flatten 类初始化方式&#xff1a; torch.nn.Flatten(star…

算法基础详解

大O记法 为了统一描述&#xff0c;大O不关注算法所用的时间&#xff0c;只关注其所用的步数。 比如数组不论多大&#xff0c;读取都只需1步。用大O记法来表示&#xff0c;就是&#xff1a;O(1)很多人将其读作“大O1”&#xff0c;也有些人读成“1数量级”。一般读成“O1”。虽…

友力科技广州数据中心搬迁

搬迁工作内容 1.搬迁技术工作 1)确定机房搬迁的负责人以及负责人的联系方式&#xff0c;保证在搬迁的过程中统一指挥管理。 2)确定服务器的数量&#xff0c;服务器的型号&#xff0c;服务器的配置等&#xff0c;如有需要&#xff0c;联系相关服务器的供货商或者厂家提供技术支持…

【极速入门版】编程小白也能轻松上手Comate AI编程插件

文章目录 概念使用错误检测与修复能力API生成代码生成json格式做开发测试 在目前的百模大战中&#xff0c;AI编程助手是程序员必不可少的东西&#xff0c;市面上琳琅满目的产品有没有好用一点的&#xff0c;方便一点的呢&#xff1f;今天工程师令狐向大家介绍一款极易入门的国产…