`
sunrise353
  • 浏览: 75742 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

监听类的使用

    博客分类:
  • J2EE
阅读更多

1。监听类

import java.io.Serializable;
import   java.util.Timer;
import java.util.TimerTask;
import   javax.servlet.ServletContextEvent;
import   javax.servlet.ServletContextListener;

import com.cy.business.Task;
    
    public   class   TestListener   implements   ServletContextListener,Serializable{

		private static final long serialVersionUID = 1L;
			private   Timer   timer ;
            private   Task   task=new Task();
            public TestListener() {
				// TODO Auto-generated constructor stub
            	System.out.println("start");
			}
            
              public   void   contextInitialized(ServletContextEvent   event)   {
                     timer   =   new   Timer(true);
                    
                     
                     timer.schedule(task,   0,   1000);//milliseconds
                     //在ServletContext中设置一系列的属性,可以在jsp的页面中调用
                     event.getServletContext().log("定时器已启动"+task.toString());
                     event.getServletContext().setAttribute("task", task);
                     event.getServletContext().setAttribute("timer", timer);
                     event.getServletContext().setAttribute("athread", task.getAthread());  
              }
        
              public   void   contextDestroyed(ServletContextEvent  event)   {
                       
                     timer.cancel();
                     event.getServletContext().log("定时器已取消");         
              }      
      }

 

  

 

 

2。web.xml中配置 

 <listener>
   <listener-class> com.listener.TestListener </listener-class>
  </listener>

 

3。test.jsp中使用监听类中设置的属性

 

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<%
//调用监听类中设置的属性
Task task=(Task)(getServletContext().getAttribute("task"));
Timer timer=(Timer)(getServletContext().getAttribute("timer"));
Athread athread=(Athread)(getServletContext().getAttribute("athread"));
System.out.println("thraed stop id:"+athread.getId());
athread.stopthread();
Thread.currentThread().sleep(10*1000);
task.cancel();
//timer.schedule(new   TestTimer(),0,3*1000);//milliseconds
%>
</head>

 

 

分享到:
评论

相关推荐

    android 外部类作为事件监听器类

    7. **性能影响**:使用外部类作为监听器可能会引入额外的对象创建和内存开销,需要权衡性能和代码结构。 举例来说,`SendSms`这个文件名可能表示一个负责发送短信的外部类,它可能包含了一个`OnClickListener`接口...

    Android 匿名内部类作为事件监听类

    本文将深入探讨如何使用匿名内部类作为事件监听类,以及其在Android开发中的应用。 首先,我们需要理解什么是匿名内部类。在Java中,匿名内部类是没有名字的类,它可以直接继承一个类或实现一个接口。在Android中,...

    匿名内部类作为事件监听器

    "匿名内部类作为事件监听器"这一主题主要涉及如何在不创建独立类的情况下为UI组件如按钮(Button)添加事件监听功能。下面我们将深入探讨这个话题。 首先,Android中的事件处理通常基于监听器接口。例如,`...

    易语言源码易语言监听类的复制源码.rar

    易语言源码易语言监听类的复制源码.rar 易语言源码易语言监听类的复制源码.rar 易语言源码易语言监听类的复制源码.rar 易语言源码易语言监听类的复制源码.rar 易语言源码易语言监听类的复制源码.rar 易语言源码...

    java一个监听器的例子

    这个例子将探讨如何在Java中使用监听器,特别是事件监听器,它们是Java Swing和Java AWT库中用于图形用户界面(GUI)交互的核心组成部分。 首先,我们需要了解Java中的事件模型。Java事件模型基于发布/订阅原则,...

    android中Editext监听工具类

    使用这个工具类时,在Activity或Fragment的`onCreate()`方法中调用`EditTextUtil.addTextChangeListener(editText1, editText2, ...)`即可。这样,每当`EditText`的内容发生变化,都会自动触发相应的逻辑,无需在每...

    java 监听使用

    ### Java监听器使用详解 #### 一、引言 在Java Web开发中,尤其是在使用Tomcat作为服务器的情况下,经常会遇到需要在服务器启动时执行特定任务的需求。这些任务可能包括加载必要的配置信息、预加载数据等操作,以...

    java事件监听方法和代码

    Java事件监听器即一组动作接口。... 事件监听器是需要注册才能使用的,注册方法如下: public void add(&lt;ListenerType&gt;listener); 事件监听器也可以注销,注销方法如下: public void remove(&lt;ListenerType&gt;listener

    android全局事件监听器

    在Android开发中,全局事件监听器是一种非常实用的设计模式,它允许开发者在整个应用程序范围内监听特定的事件,而无需在每个需要响应的类中都添加监听代码。标题中的"android全局事件监听器"指的是一个实现此类功能...

    Java实现时间监听

    在Java中,我们可以使用`java.util.Timer`类、`java.util.TimerTask`类以及Java 8引入的`java.time`包中的接口来实现时间监听功能。下面将详细介绍这些方法。 1. **使用Timer和TimerTask** `java.util.Timer`类...

    java监听器的实现和原理详解

    在Java中,事件监听器的实现可以通过接口和类来实现。例如,我们可以定义一个事件监听器接口,包含事件处理方法,然后在事件源中注册事件监听器。当事件源触发事件时,事件监听器将被回调,执行相应的事件处理方法。...

    易语言监听类的复制

    易语言监听类的复制源码,监听类的复制,子程序1,复制回调,初始化_复制监听,复制监听,复制监听对象_QueryInterface,复制监听对象_AddRef,复制监听对象_Release,asm_整数加法,asm_写整型内存,取变量地址_对象,取变量...

    Java监听器添加 四种监听器 内部 外部 内部匿名 自身

    下面是一个使用内部类作为监听器的例子: ```java class ThisClassEvent extends JFrame implements ActionListener { JButton btn; public ThisClassEvent() { super("Java 监听器: 内部类监听器"); setLayout...

    传智播客_俄罗斯方块游戏05_编写Controler类实现事件监听

    在本课程"传智播客_俄罗斯方块游戏05_编写Controller类实现事件监听"中,我们将深入探讨Java编程中的关键概念,特别是面向对象设计和事件处理。这些概念是JavaEE和JavaME开发的基础,对于任何希望在IT领域建立稳固...

    c# UDP 广播的接受发送,监听的使用

    在C#中,我们通常使用`System.Net.Sockets.UdpClient`类来处理UDP通信。创建一个`UdpClient`实例,然后调用其`JoinMulticastGroup`方法加入广播组,以便接收广播数据。 发送UDP广播的过程如下: 1. 创建一个`Udp...

    java的监听方法

    2. B.java:可能是包含监听方法的具体监听器类,或者是一个与事件处理相关的辅助类。 3. AEvent.java:这是事件类,通常继承自`java.util.EventObject`,用于封装事件的相关信息,如事件类型、事件源等。 4. A...

    QT 键盘监听(重写监听事件)

    为了全局监听键盘事件,我们需要自定义一个事件过滤器类,继承自QObject,并重写其eventFilter()方法。事件过滤器可以拦截应用程序中的所有事件,包括键盘事件。 ```cpp #include #include class KeyboardFilter...

    多线程监听的串口类

    本文将详细讨论“多线程监听的串口类”,它主要用于实现高效的串口数据接收和处理。通过多线程机制,该类可以同时处理多个并发任务,提高系统的反应速度和资源利用率。 首先,我们来理解串口的基本概念。串口,也...

    Android数据库内容变化的监听

    Android 系统中有多种方式可以监听数据库中的内容变化,例如使用 CursorAdapter 对象,这些对象可以自动注册到 Uri 上,并在 Uri 的内容发生变化时自动刷新。 Android 数据库内容变化的监听机制是 Android 系统中...

Global site tag (gtag.js) - Google Analytics