package com.listener;
import java.util.Date;
import java.util.TimerTask;
public class MyTask extends TimerTask{
private static boolean isRunning = false;
public void run() {
// TODO Auto-generated method stub
if(!isRunning)
{
isRunning = true;
System.out.println(new Date()+"任务开始");
for (int i = 0; i <100; i++)
{
System.out.println(new Date()+"任务完成"+i+"/"+100);
try {
Thread.sleep(50);//休眠50毫秒进入下一次循环
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
isRunning = false;
System.out.println(new Date()+"所有任务完成");
}
else
{
System.out.println(new Date()+"任务退出");
}
}
}
package com.listener;
import java.util.Date;
import java.util.Timer;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
public class TestListener implements ServletContextListener {
private Timer timer = null;
public void contextDestroyed(ServletContextEvent sce) {
timer.cancel();
sce.getServletContext().log(new Date()+"计时器销毁");
}
public void contextInitialized(ServletContextEvent sce) {
timer = new Timer(true);
sce.getServletContext().log(new Date()+"计时器已经启动");
timer.schedule(new MyTask(), 0,60*1000);//间隔一分钟执行下一次定时任务
sce.getServletContext().log(new Date()+"计时器执行一次");
}
}
分享到:
相关推荐
Java 定时任务是指在 Java 语言中实现的定时执行任务的机制,通过使用 Timer 和 TimerTask 两个类,可以实现定时执行任务的功能。在这个例子中,我们将实现每天定时执行任务的功能,具体来说,就是在每天的凌晨 2 点...
Java中的定时任务是软件...对于更复杂的需求,可以考虑使用`ScheduledExecutorService`,它提供了更强大和灵活的定时任务管理功能。在开发过程中,我们需要注意线程安全和资源管理,确保定时任务能够稳定、高效地运行。
当使用Spring框架时,可以利用Spring的定时任务支持。通过`ScheduledTimerTask`,我们可以方便地在Spring配置文件中声明和管理定时任务。配置示例: ```xml <!-- TimerFactoryBean配置 --> <!-...
然后在`@Configuration`类中使用`@EnableScheduling`开启定时任务扫描: ```java @Configuration @EnableScheduling public class AppConfig { // 其他配置... } ``` 3. **部署到Web环境:** 由于我们的...
在“java定时任务demo,帮助你快速熟悉定时任务_hy5”这个项目中,文件名称列表中出现的“quartz-demo-master”表明该项目包含了Quartz库的使用示例,可能是一个完整的演示项目,包括了创建定时任务、配置任务触发器...
对于使用Spring框架的应用,可以利用其强大的定时任务支持功能。Spring提供了一个更高级的定时任务管理方式,即`ScheduledTimerTask`,允许通过XML配置来定义任务的延迟时间和执行周期。这种方式避免了在代码中硬...
在这个"java web使用监听器实现定时周期性执行任务demo"中,我们将探讨如何利用Java的Servlet监听器(Listener)和定时任务API来达到这个目标。 首先,我们要了解Java中的监听器。在Java Web应用程序中,监听器是...
Spring框架是Java开发中广泛使用的轻量级框架,它提供了丰富的功能,其中之一就是对定时任务的支持。`@Scheduled`注解是Spring Framework中用于创建定时任务的重要工具,它允许开发者在不重启应用的情况下,实现定时...
在Servlet容器(如Tomcat)中,可以通过监听器(Listener)或者Servlet的初始化方法来创建和启动定时器,以实现在Web应用启动后自动开始执行定时任务。 此外,Java 5引入了`java.util.concurrent`包,其中的`...
event.getServletContext().log("Web容器关闭时,取消定时任务"); } } } ``` 在这个监听器中,我们创建了一个定时器对象`timer`,并在Web容器启动时初始化定时器,设置具体的任务和执行间隔时间。同时,在Web...
Quartz.Net是一个功能强大的定时任务框架,它的设计允许用户能够以异常灵活的方式设置和执行定时任务。作为一种.NET环境下的任务调度解决方案,Quartz.Net提供了丰富的API,使开发者能够通过编程的方式控制任务的...
总结来说,这些代码示例涵盖了使用`Timer`和`ScheduledExecutorService`两种不同方式来实现Java定时任务,以及可能的自定义任务监听器`TaskListener`。通过学习和理解这些代码,开发者可以更好地理解和应用Java的...
在使用Quartz框架开发定时任务时,开发者首先需要定义作业(Job),这相当于一个任务的主体,它包含了具体的业务逻辑。接下来,需要定义触发器(Trigger),它决定了作业的执行时间。Quartz支持多种触发器类型,例如...
在本压缩包中,listener-redis-expired-event-main是一个主程序入口,它包含了监听器的实现、事件定义以及定时任务的配置。这个主程序入口文件可能是整合了以上所有功能的Spring Boot应用程序入口点,其中定义了相关...
本教程将探讨如何在Spring Boot 2项目中整合代码生成器、监听器、过滤器、拦截器、分布式定时任务以及PageHelper分页插件。这些组件在实际开发中都有着重要的作用。 1. **代码生成器**: 代码生成器是一种工具,...
在Java类中,我们可以使用`@Component`注解使其成为Spring管理的Bean,然后使用`@Scheduled`注解来定义定时任务。比如: ```java import org.springframework.scheduling.annotation.Scheduled; import org.spring...
综上所述,Quartz是一个功能强大、易于使用的Java定时任务框架,能够满足各种复杂场景下的需求。通过对上述核心概念的理解以及示例代码的分析,我们可以更好地掌握如何在Java应用程序中利用Quartz实现定时任务的功能...
Java语言中有多种方式来实现定时任务,包括使用Timer、TimerTask、 ScheduledExecutorService等。下面是对Java定时任务实现方法的一些总结和解释。 使用Timer实现定时任务 在Java中,使用Timer类可以实现简单的...
**Spring-task定时任务详解** Spring-task是Spring框架的一部分,它为开发者提供了强大的任务调度和执行功能,使得在Java应用中实现定时任务变得简单易行。本文将深入探讨Spring-task的注解方式和XML配置方式的使用...