【web后端(十)】jsp、servlet_会话管理_servletContext

Jakarta EE 实验 — Web 聊天室(Web Chatroom)开发(一) 摘要:本实验基于Jakarta Servlet技术开发了一个简易Web聊天室系统。项目采用Maven Webapp架构,使用Session管理用户状态,ServletContext实现应用级数据共享(在线用户列表和消息列表)。系统包含登录、聊天和退出功能,通过JSP页面展示界面,Servlet处理业务逻辑。实验重点演示了Session的生命周期管理(自动超时和手动销毁)、请求转发与重定向的区别,以及web.xml的配置方法。系统采用Tomcat服务器运行,数据非持久化,消息通过页面刷新实现广播。该实验完整实 阅读详情

服务器的工作过程:

服务器在第一次启动的时候,会读一个部署描述符文件,也就是.xml文件。这是一个规范,是约定好的。我们在里面写的servlet的配置,里面有servlet的名字。只要读到servelt,服务器就会实例化它们的名字。servlet不再是字符串,而这些实例的键就是url。每一个servlet的url是不同的,但是它们的根localhost:8080是一样的。也就是说,服务器拿地址请求客户端的时候,去掉根的部分就是url。拿url做键,在ServletContext中找到实例,然后运行里边规定的那些方法。这里,实际上调的是service方法。

其实,ServletContext就是servlet的上下文。如果我们自己写一个类,想拿到它的servlet引用,我们即通过的shiServletContext引用拿到的,他就是服务器最大的容器。

双向管理:每一个在ServletContext容器中的servelt也持有这容器的引用。

ServeltContext的实质:

ServletContext在服务器中,实际上是当缓存用的,且这里头不允许用servlet注册servlet。而容器在一启动的时候就存在了,而只要服务器一直不关闭,容器就在。也就是说,它的生命周期就是整个服务器运行的时间,且在会话中它的生命周期最长。

 

ServletContext容器的特性:

在容器中个,每一个servelt拿着自己的引用,但是它们持有的是同一个servlet运行环境、集合、ServletContext。只要一个servlet存进去,就和session的功能一样,其他的servlet也能拿到容器的引用。而且并不需要同一个会话,即保存同一个id,不同的进程也能访问。

而且ServletContext也可跨域请求。

Jakarta EE 实验 — Web 聊天室(JSP版) 本文介绍了基于JakartaEE技术栈的Web聊天室实现方案。系统采用JSP+Servlet架构,使用Maven构建,运行在Tomcat10+服务器上。主要功能包括用户登录、消息收发、在线用户查看、退出功能,并实现了敏感词过滤、权限控制和消息条数限制。关键技术点包括:通过ServletContext共享全局数据,使用Filter处理编码和权限验证,利用Listener管理应用初始化和会话生命周期。文章提供了完整的项目创建步骤、代码实现和详细解释,并附有测试方案。该实验项目可作为学习JakartaEE中Ser 阅读详情

相关推荐

基于Gardner环的QPSK定时同步MATLAB仿真:四倍采样与多场景性能分析

本文详细介绍了基于Gardner环的QPSK定时同步MATLAB仿真方法,重点分析了四倍采样技术在定时同步中的应用与性能优化。通过MATLAB代码实例展示了Gardner环的实现原理、多场景性能分析及常见问题解决方案,为数字通信系统的定时同步设计提供实用参考。

weixin_29083475的博客 373

【web后端(十一)】jsp、servlet_会话管理_servletContext应用示例

示例: 写一个servlet,定期连接到数据库,并把读到的数据缓存到ServletContext当中。 我们设置的休眠时间为一分钟,即一分钟之后,再次刷新表格。我们在数据库里增加的信息,就能够再次执行后显示在浏览器页面上。 我们一分钟之后再执行一下 import java.sql.Connection; import java.sql.Dr...

LED_of_Java的博客 384

eNSP搭建基础网络

1、除5的环回地址固定以外,整个其他所有网段基于192.168.1.0/24进行合理的IP地址划分 2、R1-R4每个路由器存在两个环回接口,用于模拟连接pc网段﹔地址也在192.168.1.0/24这个网络范围内 3、R1-R4上不能直接编写到达5.5.5.0/24的静态路由,但依然可以访问 4、全网可达,尽量减少每台路由器,路由表条目数量,避免环路出现5R4与R5间,正常100oA链路通信,故障时自动改为100M 全网使用192.168.1.0/24网段进行划分,尽量减少路由条目Pc端IP使用pHcP技

在月光下棕榈树的叶子在瑟瑟抖动 8466

java script 代码放在jsp 还是放在servlet_ServletContext JSP

会话:四种:1 :Session–保存在服务器上默认的30分2:Cookie 客户端的,maxAge3:重写 url - > url;jsessionid=xxxxxxx - > response.encodeRedirectUri(url);4:隐藏表单 1:ServletContext2:JSP–3:用JSP来重构项目。1:ServletContext特点:1:一个应用程序一个...

weixin_31221157的博客 263

Python地理空间数据库之geopandas使用详解

地理空间数据分析在许多领域中都有着广泛的应用,包括地理信息系统(GIS)、城市规划、环境科学、地质勘探等。Python GeoPandas是一个强大的库,旨在简化地理空间数据的处理和分析。本文将深入介绍GeoPandas库,包括其基本概念、功能特性、示例代码以及在实际应用中的应用场景。

Rocky006的博客 1万+

TLSR8258蓝牙Mesh实战:从SDK下载到自定义通信指令全流程(附避坑指南)

本文详细介绍了TLSR8258蓝牙Mesh开发的完整流程,从SDK下载、环境搭建到自定义通信指令的实现。通过实战案例和避坑指南,帮助开发者快速掌握低功耗蓝牙Mesh网络构建技巧,适用于智能家居、工业监控等物联网场景。

weixin_29176179的博客 198

[Servlet 3]会话管理、进阶API、监听过滤器

Java Servlet3:会话管理,进阶API,监听器与过滤器的实现

JacinLee的博客 506

ESP32开发环境避坑指南:用Thonny烧录MicroPython固件时常见的5个错误及解决方法

本文针对ESP32开发新手,详细解析了使用Thonny IDE烧录MicroPython固件时最常见的5个错误及其解决方案。内容涵盖驱动安装、端口识别、固件烧录失败、版本兼容性、连接不稳定以及文件系统操作异常等核心痛点,并提供硬件层面的深度排查指南,帮助开发者高效搭建稳定的ESP32开发环境。

weixin_29189003的博客 404

JavaWeb笔记:第06章 Tomcat |Servlet |HTTP协议 |request |response |ServletContext |Cookie |Session |JSP

JavaWeb笔记:第06章 Tomcat | Servlet | HTTP协议 | request | response | ServletContext | Cookie | Session

IAMLSL的博客 993

Windows server Database 2025 安装 i225/i226 网卡驱动

Windows server Database 2025 安装 i225/i226 网卡驱动 windows这比坏得很,intel消费级网卡不准在服务器系统上安装。你要说他是异构不支持?他就纯粹恶心人。 之前已经安装过一次,但是今天database预览版一更新,又给我把网卡驱动杀了,气死,写一篇教程。 到这里就完成了,总之还是想辱骂windows,提供便捷的同时又人为制造困难,多少有点(隔壁linux内核直接自带全家桶了就一省心) 并且近年Intel的新U安装显卡驱动和普通声卡驱动都不会出声

低温热源的博客 1万+

【华为OD技术面试手撕真题】1、长度最小的子数组 | 手撕真题+思路参考+代码解析(C & C++ & Java & Python & JS)(三种解法)

【华为OD面试手撕真题】长度最小的子数组,本专栏更新每年华为OD机试的高频手撕代码题,每个题目都会使用五种语言进行解答(C & C++& Java & Python & JS),思路分析都非常详细, 实现最低的时间复杂度和高通过率,每个解题思路超过百字,内含各个编程语言的八股文面试题,欢迎大家订阅学习, 代码可以直接运行使用,全网限时最低价,持续更新

KJ.JK 1万+

(Servlet+Jsp)Web编程笔记(一套就够了)

文章目录Web编程技术笔记1. BS架构与CS架构2. idea安装及使用3. Servlet介绍1. 新建一个Servlet2. 配置web服务器Servlet有两种配置方式1. 注解方式2. xml配置方式**3. Tomcat所对应的Servlet/JSP规范和JDK版本:**4. Servlet体系结构:1. Servlet继承体系2. Servlet: 接口3. HttpServlet: 抽象类4 HttpServletRequest: 请求对象5. HttpServletRespo

有时间可以指导毕业设计,可以私聊我。一个热爱编程的smallCuteMonkey,可以私信我 524

如何用DeepSeek写年底工作总结?——从入门到精通的全流程指南

AI助手DeepSeek如何高效撰写工作总结 摘要:本文介绍如何利用DeepSeek智能AI助手高效完成工作总结写作。工作总结具有结构固定、语言规范、内容数据化三大特性,而DeepSeek的结构化生成、风格适配、数据整合和迭代优化四大核心能力与之完美匹配。文章提出"准备-搭架-填充-优化"四步工作法:1)精准输入岗位、时间范围等核心信息;2)先搭建逻辑清晰的提纲框架;3)分模块填充具体内容,突出数据与案例;4)通过风格润色和细节补充进行优化。通过合理运用多模态材料处理能力,DeepSee

通俗易懂学IT 285

Servlet和JSP重点总结

一、Servlet作用 在Servlet规范中,指定【动态资源文件】开发步骤 在Servlet规范中,指定Http服务器调动动态资源文件规则 在Servlet规范中,指定Http服务器管理动态资源文件实例对象规则 二、Servlet接口实现类开发步骤 创建一个java类继承与HttpServlet父类,使之成为一个Servlet接口实习类 重写HttpServlet父类两个方法,doGet或doPost 将Serclet接口实现类信息注册到Tomcat服务区 网站---->web-----&gt

weixin_55232658的博客 430

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Servlet交互与JSP

Servlet交互与JSP 一、Servlet注解的使用 在自己所定义的Servlet类上面写上@WebServlet(“/路径名”),就不用在web.xml中写 注意:修改项目的web.xml中 metadata-complete=“false”>,把true写成false启用注解 二、Servlet功能 (一)servlet的三大职责 接收参数(封装,接受前台数据) ---->...

EstherLty的博客 938

VB摄像头监控

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

ServletContext 与application的异同

相同:其实servletContext和application 是一样的,就相当于一个类创建了两个不同名称的变量。在 servlet中ServletContext就是application对象。大家只要打开jsp编译过后生成的Servlet中的 _jspService()方法就可以看到如下的声明: ServletContext application = null; application = pageContext.getSe...

一只苟延残喘的卑微蝼蚁 767

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Servlet和JSP复习笔记

1. 理解典型的Web应用     1.1  浏览器客户端、Web服务器、应用服务器、数据库服务器         1.1.1  在我们的项目里Tomcat即是Web服务器,又是应用服务器。         1.1.2 Web服务器一般用来处理静态的内容,HTML,CSS之类的东西         1.1.3 应用服务器主要负责在服务器端运行的应用程序,比如说我们的Servlet和JSP

积累与坚持 533

基于Servlet和JSP服务器应用对象

基于Servlet和JSP服务器应用对象 文章目录前言已经学完Servlet和JSP,这篇主要介绍其相关的服务器应用对象。一、服务器应用和Web服务器二、服务器应用对象1.ServletContext对象2.HttpSession对象三、总结 前言 已经学完Servlet和JSP,这篇主要介绍其相关的服务器应用对象。 一、服务器应用和Web服务器 提到“web服务器”时,通常要把它认为是以HTTP为核心、web UI为向导的应用。当有人说到“应用服务器”时,你可能想到“高负载、企业级特性、事务和队列、多通

qq_51795666的博客 384

java Servlet、JSP

什么是Servlet 采用JAVA语言编写的服务器端程序,运行在web服务器中的servlet容器中,主要功能是提供请求\响应的web服务模式,生成动态web内容。 servlet的优点: 1.较好的可移植性,无需修改代码就可以部署在多种不同类型的web服务器上。 2.执行效率高,Servlet针对每个请求创建一个线程执行,有更短的响应时间。 3.功能强大,可以与web服务器进行交互 4.使用方便 5.可扩展性强 servlet生命周期可以分为加载、创建、初始化、处理客户请求、卸载 1.加载:容器通过类加载

JIE_ling8的博客 374

快速了解 servlet(SpringMVC 的底层)

Servlet是 Java EE/Jakarta EE 的核心技术,用于处理 Web 请求,开发者需要手动处理很多细节。基于 Servlet 之上,通过注解和封装提供了更高层次的 Web 开发体验,简化了请求处理、依赖管理和数据绑定。这两者在设计上有相似之处(比如注解驱动开发),但 Spring Boot 更注重开发的简便性和功能的完整性。

小程xy的博客 2338

Tomcat 学习之 Servlet

互联网兴起之初,当时的 Sun 公司(后来被 Oracle 收购)已然看到了这次机遇,为了使 Java 进军 Web 编程领域,推出了 Applet 支持 Web 应用,但是效果并不如预想的那般美好,Applet 并没有给业界带来多大影响。之后,Sun 公司的大佬潜心专研,推出了 Servlet(Server Applet,全称 Java Servlet)实现动态网页。Tomcat 的前身为 Catalina,Catalina 是一个轻量级的 Servlet 容器,提供了运行 Servlet 的环境和服务。

zjs246813的博客 1761

servlet 数据存储几种方式和jsp 作用域

有几个对象 1、Session:一个用户第一次访问网站,有一个唯一的id 存在客户电脑里(cookie) 2、request:从浏览器的一次请求 3、ServletContext:可以表示多个sevlet,相同整个应用的存数据的对象 4、coockies:用户记录一些用户访问网站的信息

monica12的专栏 3324

JAVAEE的核心-Servlet

文章目录前言一、web开发概述二、web开发环境搭建三、创建发布web项目四、Servlet概述五、Servlet创建和使用六、http6.1http协议6.2http请求6.3http响应七、session八、过滤器九、监听器总结 前言 一、web开发概述 web:在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源。javaweb:使用java技术开发web页面。 Web服务器:接收客户端的请求,给客户端作出响应。学习web开发,需要先安装一台web服务器,将开发好的we

qq_52173163的博客 2895

JSP和Servlet进阶

学习目标 请求 请求的结构 响应的结构 ContentType的作用 请求转发与重定向 解决问题:要实现多个servlet组合使用

weixin_45471954的博客 248

java jsp聊天系统_java web实现简单聊天室

目标servlet、jsp实现简单聊天室,用户通过浏览器登录后进入聊天室,可发送消息进行群聊,点击聊天信息框中的用户名可实现拍一拍功能。基础知识数据的存取 setAttribute / getAttributerequest请求对象 :有效时间短ServletContext上下文对象:一直存在于服务器,存储公有、 共享数据Session会话对象:独立网站默认页面一般是index.jsp实现思路1....

weixin_42361237的博客 2917

servlet学习笔记

通过学习动力节点的Servlet课程整理的学习笔记

循环的命运的博客 491
上一篇: 【web后端(九)】jsp、servlet_会话管理_session
下一篇: 【web后端(十一)】jsp、servlet_会话管理_servletContext应用示例
寻爻青年
博客等级 码龄8年 27粉丝 137原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

寻爻青年

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值