JavaWeb-03-Servlet-13-监听器接口

Java Web监听器Listener接口原理及用法实例 主要介绍了Java Web监听器Listener接口原理及用法实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 立即下载

JavaWeb-03-Servlet-13-监听器接口

1.介绍

  1. 【位置】:监听器接口来自于Servlet规范下,共有8个接口。具体位置在Tomcat下的servlet-api.jar
  2. 【监听器接口实现类】:Http服务器所提供的jar包中没有监听器接口的实现类,需要由开发人员手动实现。
  3. 【监听器接口一般用于】:
    1. 作用域对象生命周期变化时刻
    2. 作用域对象共享数据变化时刻

2.作用域对象

  1. 【定义】:在Servlet规范中认为,在服务端内存中可以在某些条件下为多个Servlet之间提供数据共享方案的对象,就可以被称为作用域对象。

  2. 【Servlet规范下的作用域对象】:

    1. ServletContext:全局作用域对象
    2. HttpSession:会话作用域对象
    3. HttpServletRequest:请求作用域对象

    Cookie虽然也能实现多个Servlet之间的数据共享,但是Cookie位于客户端浏览器内存或硬盘中,并不在服务端中。所以在Servlet规范中,并没有把Cookie当作作用域对象来看。

3.监听器接口实现类开发规范三步骤

  1. 根据监听的实际情况,选择对应监听器接口进行实现
  2. 重写监听器接口声明的【监听事件处理方法】
  3. 在web.xml文件中将监听器接口实现类注册到Http服务器中

4.ServletContextListener接口

4.1作用

通过这个接口合法地监听全局作用域对象【被初始化时刻】以及【被销毁时刻】。

4.2监听事件处理方法

1.contextIninlized():在全局作用域对象被Http服务器初始化时被调用

public void contextIninlized();

2.contextDestroy():在全局作用域对象被Http服务器销毁时触发调用

public void contextDestroy();

4.3演示

本次演示的是监听全局作用域对象,而该对象是由Tocat服务器负责创建的。所以我们只需要编写监听器接口实现类即可。

1.新建一个网站MyWeb,创建一个ServletContextListener接口实现类:OneListener

package com.tsccg.listener;

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;

/**
 * @Author: TSCCG
 * @Date: 2021/08/20 16:23
 */
public class OneListener implements ServletContextListener {
    @Override
    public void contextInitialized(ServletContextEvent sce) {
        System.out.println("全局作用域对象被创建");
    }

    @Override
    public void contextDestroyed(ServletContextEvent sce) {
        System.out.println("全局作用域对象被销毁");
    }
}

2.在/web/WEB_INF/web.xml文件里将监听器接口实现类注册到Tomcat服务器上

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
    <!-- 注册监听器接口实现类 -->
    <listener>
        <!-- 写入监听器接口实现类的完整类名 -->
        <listener-class>com.tsccg.listener.OneListener</listener-class>
    </listener>
</web-app>

3.发布网站,开启服务器

4.关闭服务器

5.ServletContextAttributeListener接口

5.1作用

通过这个接口合法地监听全局作用域对象中【共享数据发生变化的时刻】

5.2监听事件处理方法

public void attributeAdded();//在全局作用域对象中共享数据增加时触发调用
public void attributeReplaced();//在共享数据更新时触发调用
public void attributeRemove();//在共享数据被删除时触发调用

5.3全局作用域对象中共享数据发生改变时刻

ServletContext application = request.getServletContext();
application.setAttribute("key1",10);//新增共享数据
application.setAttribute("key1",20);//更新共享数据
application.removeAttribute("key1");//删除共享数据

5.4演示

新建一个网站MyWeb,创建一个Servlet接口实现类OneServlet,在该实现类里对全局作用域对象中的共享数据进行增改删操作。

再创建一个ServletContextAttributeListener接口实现类用于监听全局作用域对象中的共享数据的改变。

OneServlet:

package com.tsccg.controller;

import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
 * @Author: TSCCG
 * @Date: 2021/08/20 17:02
 */
public class OneServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        ServletContext application = request.getServletContext();
        application.setAttribute("key1",10);//增加共享数据
        application.setAttribute("key1",20);//更新共享数据
        application.removeAttribute("key1");//删除共享数据

    }
}

OneListener:

package com.tsccg.listener;

import javax.servlet.ServletContextAttributeEvent;
import javax.servlet.ServletContextAttributeListener;

/**
 * @Author: TSCCG
 * @Date: 2021/08/20 17:09
 */
public class OneListener implements ServletContextAttributeListener {
    @Override
    public void attributeAdded(ServletContextAttributeEvent scae) {
        System.out.println("共享数据增加了");
    }

    @Override
    public void attributeRemoved(ServletContextAttributeEvent scae) {
        System.out.println("共享数据删除了");
    }

    @Override
    public void attributeReplaced(ServletContextAttributeEvent scae) {
        System.out.println("共享数据更新了");
    }
}

将Servlet接口实现类和ServletContextAttributeListener接口实现类注册到Tomcat服务器上后,发布网站。

在对全局作用域中共享数据进行操作的位置打上断点。

开启服务器,通过浏览器请求访问OneServlet。

PaddleOCR在医疗票据识别中的实战:从部署到业务字段提取 本文详细介绍了PaddleOCR在医疗票据识别中的实战应用,重点阐述了其离线部署方案与PP-OCRv3模型选型优势。针对医疗票据敏感数据不出本地的合规要求,文章提供了从环境搭建、模型配置到核心字段提取策略的完整流程,并分享了性能优化与系统集成的实践经验,有效解决了医疗票据自动化录入的难题。 阅读详情

相关推荐

深度解析跨境支付之业务架构

详解跨境支付之业务架构

weixin_47493863的博客 1878

Java监听器(重点)

监听事件 就是你点击那个按钮然后执行相应的事件 java中监听是什么_Java中的监听器 java----监听器的作用

zhansan的博客 2972

MPU6050芯片 寄存器详解与配置指南(详解)

分频值越小,数据刷新越快(如分频值 = 0 时,刷新率 = 8kHz/1=8kHz)。功能:配置采样频率分频系数,控制 ADC 转换速度和数据刷新率。数据刷新率 = 陀螺仪输出时钟频率 /(1 + 分频值)

m0_74696257的博客 1421

监听器接口

servlet规范扩展 监听器接口 介绍 一组来自于servlet规范下的接口,共有8个接口。在servlet-api jar包中 监听器接口需要由开发人员亲自实现,http服务器提供的jar包中并没有对应的实现类 监听器接口用于监控【作用域对象的生命周期的变化时刻】以及【作用域对象共享数据变化时刻】 作用域对象 在servlet规范中,认为在服务端内存中可以在某些条件下为两个servlet之间提供数据共享方案的对象,被称为【作用域对象】 servlet规范下的作用域对象 cookie存在于浏览

weixin_43903813的博客 738

不用Root!这些隐藏代码能一键开启安卓诊断端口(小米/OPPO/魅族机型实测)

本文提供了一份无需Root权限即可开启安卓手机诊断端口的实用指南。通过拨号盘输入特定隐藏代码,小米、OPPO、魅族等机型的用户可以一键激活此工程模式,从而连接电脑进行基带数据备份(如QCN文件)或故障排查。文章详细列出了各品牌指令、操作验证步骤,并强调了备份IMEI等关键数据的重要性与操作风险,旨在帮助用户在紧急情况下修复网络问题。

weixin_29260291的博客 273

【有啥问啥】智能座舱CPD技术:毫米波雷达如何守护儿童安全?

本文深入探讨了智能座舱中CPD(Child Presence Detection)技术如何通过毫米波雷达保障儿童安全。毫米波雷达凭借其穿透性检测、微动感知等优势,成为儿童遗留车内的有效解决方案。文章详细解析了技术原理、系统集成方案及安装指南,为智能座舱安全技术提供了实用参考。

weixin_29193259的博客 358

servlet中的监听器接口

一.介绍 (1)监听器接口是一组来自于Servlet规范下接口,共有8个接口。在Tomcat存在servlet-api.jar包 (2)监听器接口需要由开发人员亲自实现,Http服务器提供jar包,但是并没有对应的实现类 (3)监听器接口用于监控【作用域对象生命周期变化时刻】以及【作用域对象共享数据变化时刻】 二.什么是作用域对象? 1)在Servlet规范中,认为在服务端内存中可以在某些条件下为两个Servlet之间提供数据共享方案的对象,被称为【作用域,对象】 2)Ser...

想要成为大佬的彪彪 1389

PyTorch 面试题及详细答案120题(54-70)-- 模型训练与评估

本文介绍了PyTorch模型训练的基本流程和核心概念。主要内容包括: 模型训练基本流程:通过代码示例展示了数据准备、模型定义、损失函数和优化器选择、训练循环(前向传播、反向传播、参数更新)的完整过程,并包含验证集评估的实现。 训练过程中的关键概念: Epoch:完整遍历一次训练集 Batch:将数据分成小批次 Iteration:一个Batch的参数更新过程 三者关系:1 Epoch = N/B Batch = N/B Iteration(N为样本数,B为batch_size) PyTorch数据加载机制:

大剑师兰特的GIS世界 489

JavaWeb学习(九) ---------- 监听器接口与过滤器接口

目录一、监听器接口二、过滤器接口 一、监听器接口 1.介绍 (1) 一组来自于Servlet规范下接口,共有8个接口。在Tomcat存在servlet-api.jar包 (2) 监听器接口需要由开发人员亲自实现,Http服务器提供jar包并没有对应的实现类 (3) 监听器接口用于监控 作用域对象生命周期变化时刻 以及作用域对象共享数据变化时刻 2.作用域对象 (1) Servlet规范中,认为在服务端内存中可以在某些条件下为两个Servlet之间提供数据共享方案的对象,被称为作用域对象 (2) 分类: 我

在森林里麋了鹿 717

054_小驰私房菜_Camx i2c读写相关备忘

Camera 对Ae、Af这些控制,实际都是,最终实际都是落实到hal下发相关的指令给驱动,那hal这边是怎么给驱动下发相关命令的呢?#小驰私房菜054# #Qcom Camx#可以参考看下下面相关代码内容。

149

麒麟v10系统安装

麒麟v10系统安装

喜文BLOG 1万+

Java Web——Servlet的监听器接口(ServletContextListener、ServletContextAttributeListener)

Java Web——Servlet的监听器接口(ServletContextListener、ServletContextAttributeListener)

贝尔摩德苦艾酒 1万+

计算机毕设项目一:基于卷积神经网络、resnet、VGG化妆品分类识别 完整代码数据可直接运行

计算机毕设项目一:基于卷积神经网络、resnet、VGG化妆品分类识别 完整代码数据可直接运行

654

JavaWeb基础入门讲解JSP_Servlet

简  介 课程包含以下知识点: 1、JSP基础与九种内置对象 2、结合九种内置对象实现一个基础的图书管理模块CRUD功能 3、JSP标签 4、Servlet与标准MVC开发(过滤器、监听器等) 5、JSTL的使用 6、使用标准MVC设计模式完成一个小案例   01 认识JavaWeb 【录播】关于课程资料下载与课后答疑(3分钟)  【录播】什么是JavaWeb(10分钟)  【...

编程快乐 432

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

真的了解Servlet吗?- Tomcat与Servlet

前言 万丈高楼平地起,学习框架前先将Servlet学好 学习过程中,不断提问自己真的理解了Servlet吗? Tomcat 学习JavaWeb,肯定都接触了Tomcat这个轻量级服务器 也叫Servlet/JSP服务器,对于JavaEE的13种规范:JDBC,JNDI,EJB,RMI,JSP,Servlets,XML,JMS,Java IDL,JTS,JTA,JavaMail,JAF ...

key_768的博客 612

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

JavaWeb核心

JavaWeb核心JavaWeb核心JavaWeb核心 3-1 企业开发简介 3-2 tomcat 3-3 HTTP协议 3-4 动态资源案例 3-5 Servlet 3-6 ServletConfig 3-7 ServletContext 3-8 注解开发 3-9 学生管理系统1 3-10 请求对象-request 3-11 响应对象-response 3-12 学生管理系统2 3-13 Cookie 3-14 Session 3-15 JSP 3-16 学生管理系统3 3-17 EL表达式 3-18 J

Major_S的博客 386

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

servlet入门

文章目录1.Tomcat下载、安装、启动和关闭1.下载2.安装3.目录结构4.启动常见问题5.启动和关闭2.Servlet入门案例3.Servlet生命周期4Servlet运行原理-[理解]5.Servlet体系结构6.HttpServlet源码分析-[了解]7.ServletConfig对象作用和演示-[了解]8.HTTP协议概述1.请求行概述2.请求头概述3.请求体概述9.HttpServletRequest对象概述-[掌握]1.获取请求行得相关方法[掌握]2.获取请求头相关方法-[掌握]3.获取请求参

qq_56113699的博客 354

视频教程-IDEA版JavaWeb从入门到精通之Servlet第6-7天-Java

IDEA版JavaWeb从入门到精通之Servlet第6-7天 张长志技术全...

weixin_34492445的博客 182

狂神说【Javaweb入门到实战】笔记

01.web的基本概念、web服务器讲解 02.Tomcat详解 03.Http讲解 04.Maven 05.Servlet 06.Cookie、Session 07.JSP 08.JavaBean 09.MVC三层架构 10.Filter 11.监听器 12.过滤器、监听器常见应用 13.JDBC 01.web基本概念、web服务器讲解 web基本概念 1.1前言 web开发: web,网页的意思,www.baidu.com 静态web html,css 提供给所有人看的数据始终不会发生变化! 动

折叠伞的博客 1007

Java学习路线第二阶段:JavaWeb课程

Java学习路线第二阶段:JavaWeb Java Web,是用Java技术来解决相关web互联网领域的技术总和。web包括:web服务器和web客户端两部分。Java在客户端的应用有java applet,不过使用得很少,Java在服务器端的应用非常的丰富,比如Servlet,JSP和第三方框架等等。Java技术对Web领域的发展注入了强大的动力。 主要知识点Web前端开发基础和框架、Ser...

程序员日常 2046

【JavaWeb学习】14综合案例

JavaWeb(B站黑马)学习笔记 14综合案例

weixin_48074431的博客 967

JavaWeb详细介绍(zh)汇总

JavaWeb详细介绍(zh)汇总

weixin_45428910的博客 342

视频教程-IDEA版JavaWeb从入门到精通之Cookie和Session第13天-Java

IDEA版JavaWeb从入门到精通之Cookie和Session第13天 ...

weixin_34502020的博客 177

黑马旅游网完整代码_JavaWeb+黑马旅游网

JavaWeb+黑马旅游网|____资料|____16.黑马旅游网|____15.Maven基础|____14.Redis|____13.Ajax和JSON|____12.Jquery|____11.Filter和Listener|____10.综合案例(用户信息)|____09.JSP,EL和JSTL|____08.Cookie和Session|____07.Request和Response|_...

weixin_39613089的博客 1171

Servlet基础入门到精通核心编程实战教程

Servlet基础入门到精通高级核心编程实战精讲课程视频教程。详细讲解了Servlet从入门到精通的核心知识,通过学习能够快速入门JavaWeb,作为入门基础核心课程,讲解细致,值得学习! 课程内容如下: 课程目录 00-servlet系列课程的要求及规范 01-servlet与http的简单介绍 02-http协议的特点 03-http协议交互过程及请求详解 04-http协议响应详...

qq_35238997的博客 270

视频教程-IDEA版JavaWeb从入门到精通之XML&Tomcat第5天-Java

IDEA版JavaWeb从入门到精通之XML&Tomcat第5天 张长志技术...

weixin_34484444的博客 139
上一篇: JavaWeb-03-Servlet-12-多个Servlet之间的数据共享-03HttpServletRequest接口
下一篇: JavaWeb-03-Servlet-14-过滤器接口(Filter接口)
TSCCG
博客等级 码龄8年 85粉丝 118原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

打赏作者

TSCCG

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

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

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

打赏作者

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

抵扣说明:

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

余额充值