1操作类
package com;
import java.util.TimerTask;
public class JinTask extends TimerTask {
public void run() {
//可以定义自己要处理的方法
System.out.println("开始执行了!!!!");
System.out.println(System.currentTimeMillis());
}
}
2定时器监听类
package com;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.Timer;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class JinListener implements ServletContextListener {
//Fields
private Log logger = LogFactory.getLog(this.getClass()); //日志
private static Timer timer;
private static DeleteImageTask task = new JinTask();
public void contextDestroyed(ServletContextEvent arg0) {
logger.debug("调用contextDestroyed方法");
if (timer != null) {
timer.cancel();
logger.debug("Timer Canceled");
}
//timer.schedule(task, 0, 100);
logger.debug("contextDestroyed方法执行完成");
}
public void contextInitialized(ServletContextEvent arg0) {
logger.debug("调用contextInitialized方法");
try {
timer = new Timer(true);
GregorianCalendar now = new GregorianCalendar();
//每天9:22执行 Calendar.DAY_OF_YEAR(一年中第一天的值为 1)
//HOUR_OF_DAY( 用于 24 小时制时钟)
//WEEK_OF_YEAR(第一个星期为1)
now.set(Calendar.HOUR_OF_DAY, 9);
now.set(Calendar.MINUTE, 22);
now.set(Calendar.SECOND, 0);
timer.schedule(task, now.getTime());
} catch (Exception e) {
e.printStackTrace();
logger.error("Unable to initialize Schedule.");
}
logger.debug("contextInitialized方法执行完成");
}
}
3web.xml中的配置
<listener>
<listener-class>
com.JinListener
</listener-class>
</listener>
分享到:
相关推荐
同时,通过在`web.xml`中配置监听器或者使用Spring的`@Scheduled`注解,可以实现定时任务的自动启动。 例如,`TimerAccounting.java`可能是定义了一个处理会计相关的定时任务,它可能包括计算财务报表、检查未支付...
需要注意的是,Java的`Timer`类并不是线程安全的,因此如果多个任务需要并发执行,或者定时器需要在多线程环境中使用,可能需要考虑使用`ScheduledExecutorService`替代`Timer`,因为`ScheduledExecutorService`提供...
要在Web应用程序中使用这个监听器,需要在`web.xml`配置文件中添加对应的`<listener>`元素,指定监听器类的全限定名。这样,每当Web应用程序启动时,`TimerListener`就会被加载并初始化定时器。 总结一下,Java Web...
标题与描述均提到了“Java_Timer定时器实例_Spring实例”,这表明文章主要讨论的是如何在Java中使用Timer类创建定时任务,并将其整合到Spring框架中。以下是对该主题的详细解析: ### Java中的Timer定时器 #### ...
Java定时器在Web应用中的实现主要涉及到`java.util.Timer`类和`ServletContextListener`接口,它们在Spring、Struts、Hibernate等框架环境下同样适用。本文将详细解释如何使用这两个核心组件来实现在Web环境中定时...
下面通过具体示例代码进一步理解如何在Java Web环境中使用定时器。 ##### 4.1 定义监听器类 ```java public class TimerListener implements ServletContextListener { private Timer timer = null; private ...
这通常涉及到`web.xml`的配置、`init()`和`destroy()`方法的编写,以及选择合适的定时器实现,如`java.util.Timer`或`java.concurrent.ScheduledExecutorService`。通过这种方式,我们可以有效地管理Web应用中的后台...
在`web.xml`中,我们可以创建一个监听器(Listener)来初始化定时器。监听器会在Web应用启动时被调用,创建并启动定时器: ```xml <web-app> <!-- ... --> <listener-class>...
2. **使用监听器(Listener)**:在`web.xml`中配置一个监听器,监听器的初始化方法启动定时器,销毁方法销毁定时器。这种方式更加灵活,因为监听器可以在Web应用程序的整个生命周期中响应特定事件。 以下是一个在...
在JAVA WEB程序中添加定时器可以使用Java的Timer和TimerTask类来实现。 Timer类是Java提供的定时器类,它可以根据指定的时间间隔执行某个任务。TimerTask类则是Timer类的任务执行单元,它可以封装需要执行的任务。...
在提供的压缩包文件`ShutDownComputer`中,可能包含了上述的`ShutdownTimerBean`源码和其他相关配置文件,如`pom.xml`(Maven项目配置文件)、`web.xml`(Web应用部署描述符)等。通过分析这些文件,你可以更深入地...
在 `web.xml` 配置文件中,我们需要添加监听器的配置,这样在服务器启动时会自动加载并初始化 `OnLineListener` 类,从而启动定时器。配置如下: ```xml <!-- 监听器配置开始 --> <listener-class>...
在Web应用的配置文件`web.xml`中,需要添加监听器配置,以便在Web应用启动时加载`WorkServiceImpl`类。这通过`<listener>`标签和`<listener-class>`子标签完成,指定监听器类的全限定名。 总结一下,Java定时器...
在Spring Boot项目中,你还需要在`pom.xml`或`build.gradle`文件中添加对`spring-context`和`spring-boot-starter-web`(或`spring-boot-starter-jdbc`等,取决于你的需求)的依赖,确保所有必要的jar包都被引入。...
Java定时器是Java编程语言中用于执行预定任务的工具,主要通过`java.util.Timer`类和`java.util.TimerTask`类来实现。这些类允许程序员安排在未来某个特定时间或者定期执行的任务,对于需要周期性执行的后台操作非常...
本案例“timer随tomcat启动案例”就是针对这种情况的一个实例,它利用了Java的定时器(Timer)类和Tomcat的生命周期管理来实现在Tomcat服务器启动时自动运行的任务。 首先,我们要理解`Timer`类是Java.util包下的一...
而“ajax_timer”似乎是指在AJAX应用中使用的定时器功能,这通常涉及到动态加载或定时触发的请求。下面我们将详细探讨AJAX定时器的工作原理、实现方式以及其在实际项目中的应用。 ### 1. AJAX定时器基础 **1.1 ...