1方式一实现servletContextListener,代码如下:
package com.ask.listener;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
public class Demo1 implements ServletContextListener{
public Demo1(){
System.out.println("Demo1");
}
public void contextDestroyed(ServletContextEvent arg0) {
System.out.println("contextDestroyed");
}
public void contextInitialized(ServletContextEvent arg0) {
System.out.println("contextInitialized");
}
- 方式二实现servletRequestListener,代码如下:
package com.ask.listener;
import javax.servlet.ServletRequestEvent;
import javax.servlet.ServletRequestListener;
public class Demo2 implements ServletRequestListener{
public Demo2(){
System.out.println("Demo2");
}
public void requestDestroyed(ServletRequestEvent arg0) {
System.out.println("requestDestroyed");
}
public void requestInitialized(ServletRequestEvent arg0) {
System.out.println("requestInitialized");
}
}
- 方式三实现httpSessionListener,代码如下:
package com.ask.listener;
import javax.servlet.http.HttpSessionEvent;
import javax.servlet.http.HttpSessionListener;
public class Demo3 implements HttpSessionListener {
public Demo3(){
System.out.println("Demo3");
}
public void sessionCreated(HttpSessionEvent arg0) {
System.out.println("sessionCreated");
}
public void sessionDestroyed(HttpSessionEvent arg0) {
System.out.println("sessionDestroyed");
}
}
4.servlet中show类中代码如下:
package com.ask.servlet;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
public class Show extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
HttpSession session=req.getSession();
session.setMaxInactiveInterval(1);
System.out.println("实现监听的三种方式");
res.getWriter().write("实现监听的三种方式");
}
}
- xml配置文件如下:
<?xml version="1.0"encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns="http://java.sun.com/xml/ns/javaee"xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"id="WebApp_ID"version="3.0">
<display-name>firstServlet</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<listener>
<listener-class>com.ask.listener.Demo1</listener-class>
</listener>
<listener>
<listener-class>com.ask.listener.Demo2</listener-class>
</listener>
<listener>
<listener-class>com.ask.listener.Demo3</listener-class>
</listener>
<servlet>
<servlet-name>show</servlet-name>
<servlet-class>com.ask.servlet.Show</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>show</servlet-name>
<url-pattern>/show</url-pattern>
</servlet-mapping>
</web-app>
- 程序运行如下:先加载构造方法-在初始化-发送请求-创建session-请求结束
分享到:
相关推荐
在Java Web开发中,过滤器(Filter)和监听器(Listener)是两个非常重要的概念,它们主要用于增强应用程序的功能和管理应用程序的状态。这篇文章将对这两者的应用进行深入的总结。 **过滤器Filter** 过滤器是在...
这种服务主要用于帮助残障人士,提供无障碍功能,但也可以被开发者用于实现特定的需求,比如本例中的“系统按键监听”。在本文中,我们将深入探讨如何通过AccessibilityService来实现这一功能。 首先,我们需要创建...
在实现监听电话状态的功能时,开发者应该注意遵守用户隐私和安全的法律法规,保证应用行为的合法性。在某些国家和地区,拦截电话可能需要特别的许可或授权,开发者在实现功能时应予以重视。 最后,文章还提到了一个...
我们可以打开这个文件,查看源代码,了解它是如何实现监听器访问计数和过滤器功能的。通常,监听器类会实现Listener接口并覆盖相关的方法,而过滤器类则会实现Filter接口,重写doFilter方法。 总之,监听器和过滤器...
在Android开发中,广播是一种非常重要的组件,它允许应用程序之间进行异步通信,即使它们并未在运行。...这样的实现方式使得应用能够记录和展示接收到的广播信息,提供了一种跟踪系统广播行为的有效手段。
这是一个专门用于监听短信接收广播的组件,当有短信到达时,系统会发送一个含有短信数据的广播,而广播接收器就会响应这个广播,从而实现监听短信的效果。注册广播接收器的代码如下: <intent-filter android:...
本文将深入探讨Android广播监听的两种实现方法,并通过手机短信监听实例进行对比,为实际开发提供指导。 一、广播监听机制简介 Android广播是操作系统用来通知所有感兴趣的程序某些特定事件发生的一种机制。这些...
通过这种方式,你可以实现全键盘监听。在`eventFilter()`方法中,你可以根据实际需求处理按键事件,例如记录按键组合、触发特定功能或者修改默认行为。 在博客参考地址(https://blog.csdn.net/qq_37529913)中,...
5. `javax.servlet.ServletRequestListener`: 用于监听ServletRequest的生命周期,Java标准API未直接提供,通常通过Filter实现。 6. `javax.servlet.ServletRequestAttributeListener`: 监听ServletRequest中属性的...
然而,通过一些技巧,我们仍然可以实现监听。通常,Home键监听是通过注册BroadcastReceiver来完成的。以下是一个简单的Home键监听BroadcastReceiver的实现: ```java public class HomeKeyReceiver extends ...
在Android系统中, AccessibilityService 是一个非常重要的服务,它允许应用程序获取并响应用户与系统交互...通过这种方式,开发者可以创建出能够监听并响应系统按键的应用,但需谨慎处理获取到的信息,尊重用户隐私。
在C#编程环境中,我们可以利用Windows消息机制来实现键盘监听的功能。这主要涉及到Windows API的调用,尤其是`SetWindowsHookEx`函数,它允许我们插入一个钩子,捕获到系统中的键盘事件。下面我们将深入探讨如何在C#...
过滤器用于在请求处理链中进行预处理和后处理,提供了一种灵活的方式来增强和定制应用程序的行为。而监听器则专注于事件处理,可以监听和响应应用程序的运行时状态变化。熟练掌握这两者的使用,能够帮助开发者更好地...
ExtJS 是一个强大的JavaScript库,专门用于构建...以上就是关于ExtJS Grid Filter实现表格过滤的基本介绍和应用场景。在实际开发中,根据项目需求,灵活运用各种过滤策略,可以极大地提升数据管理的便捷性和用户体验。
在Android开发中,有时我们需要集成硬件设备,如扫描枪,以实现快速的条形码或二维码读取功能。"Android监听扫描枪设备自带扫描键DemoT"是一个针对此类需求的示例项目,它展示了如何在Android应用中监听并处理扫描枪...
本示例主要关注如何在Android应用中实现监听自身的卸载事件。 在Android中,监听应用被卸载的直接方法并不可行,因为一旦应用被卸载,其所有运行时组件(如BroadcastReceiver、Service等)都将随之消失。但是,可以...
在IT领域,尤其是在系统监控和自动化任务中,有时我们需要跟踪文件或文件夹的变化,以便在特定文件被创建、修改...通过这种方式,我们可以在C++程序中实现对文件系统变化的实时监控,满足各种自动化和系统管理的需求。
在Android系统中,广播(Broadcast)是一种非常重要的组件,它允许应用程序之间进行异步通信。广播接收器(BroadcastReceiver)是Android四大组件之一,用于监听系统或应用广播事件,并在接收到广播时执行相应的操作...
在Java Web开发中,监听器(Listener)和过滤器(Filter)是两种非常重要的组件,它们分别承担着不同的职责。监听器主要用于监听应用程序中的特定事件,而过滤器则用于在请求处理之前和之后对请求和响应进行拦截,...
在Java Web开发中,过滤器(Filter)和监听器(Listener)是两种非常重要的组件,它们主要用于增强应用程序的功能和管理应用程序的状态。本篇文章将详细解释这两种技术的使用、配置及其区别。 首先,我们来了解过滤...