`
jzq413026
  • 浏览: 3628 次
  • 性别: Icon_minigender_1
文章分类
社区版块
存档分类
最新评论

用java写了一个定时器 为什么运行两天后就突然停了

阅读更多
是不是因为异常的原因!!!
分享到:
评论
3 楼 jzq413026 2012-09-01  
facekindle 写道
                                                       
小样哈 知道学习了

好久以前的事了!!
2 楼 facekindle 2012-08-30  
                                                       
小样哈 知道学习了
1 楼 jzq413026 2012-07-16  
package service;

import java.util.*;

import org.apache.log4j.Logger;
public class AutoMatic {

  static Logger logger = Logger.getLogger ( AutoMatic.class.getName () ) ;
    //程序启动一分钟后开始统计
static long timerDelay = 1000 * 60 * 1L;
//间隔时间,每2小时插一次
static long timerPeriod = 1000 * 60 * 60 *2L;

// {
// try{
// new Timer().schedule(new AutoMaticTimerTask(), timerDelay, timerPeriod);//timerDelay从现在开始延迟执行的时间               timerPeriod 延迟参数的时间单位
// System.out.println("服务已启动.服务启动一分钟后开始进行读取数据.");
// }catch (Exception e) {
// System.err.println("服务启动失败.");
// logger.error("#ERROR# :服务启动失败!", e);
// }
// }
class AutoMaticTimerTask extends TimerTask{
public void run(){

System.out.println("开始读取数据!");
try {
new ReportMinperiodService().selectBeforeTime();
ReportMinperiodService.ANALYSE_LOCKED=false;
System.out.println("ReportMinperiodService----->插值结束!!");
new ReportDayService().selectBeforeTime();
ReportDayService.ANALYSE_LOCKED=false;
System.out.println("ReportDayService----->插值结束!!");
new ReportMonthService().selectBeforeTime();
ReportMonthService.ANALYSE_LOCKED=false;
System.out.println("ReportMonthService----->插值结束!!");
new WrReportMinperiodService().selectBeforeTime();
WrReportMinperiodService.ANALYSE_LOCKED=false;
System.out.println("WrReportMinperiodService------>插值结束");
new WrReportDayService().selectBeforeTime();
WrReportDayService.ANALYSE_LOCKED=false;
System.out.println("WrReportDayService------>插值结束");
new WrReportMonthService().selectBeforeTime();
WrReportMonthService.ANALYSE_LOCKED=false;
System.out.println("WrReportMonthService------>插值结束");
new JzqEmsBaseService().selectBeforeTime();
JzqEmsBaseService.ANALYSE_LOCKED=false;
System.out.println("JzqEmsBaseService------>插值结束!!");
new JzqMidOutputService().selectBeforeTime();
JzqMidOutputService.ANALYSE_LOCKED=false;
System.out.println("JzqMidOutputService------>插值结束!!");


} catch (Exception e) {
e.printStackTrace();
  logger.error("#ERROR# :插入错误!", e);
}

}

}

public static void main(String[] args) {
try{

new Timer().schedule(new AutoMatic().new AutoMaticTimerTask(), timerDelay, timerPeriod);//timerDelay从现在开始延迟执行的时间               timerPeriod 延迟参数的时间单位
System.out.println("服务已启动.一分钟后开始进行读取数据.");
}catch (Exception e) {
System.err.println("服务启动失败.");
logger.error("#ERROR# :服务启动失败!", e);
}
}
}

相关推荐

    JAVA获取当前时间以及JAVA_Spring定时器

    在Java编程语言中,获取当前时间是一个常见的任务,可以用于各种场景,如日志记录、时间戳处理等。本文将详细介绍两种不同的Java获取当前时间的方法,并进一步探讨如何在Spring框架中实现定时任务。 方法一: Java...

    关于给springboot添加定时器的两种方式

    如果你希望避免在主类中加入`@EnableScheduling`,而是希望保持主类的干净和简洁,那么可以采用第二种方式,即在一个单独的配置类中使用这两个注解。 **步骤一:创建配置类** 创建一个新的类,并使用`@...

    Java定时器开发源代码.docx

    这个文档中的源代码展示了如何使用`java.util.Timer`类和`TimerTask`来实现一个简单的定时提醒任务。下面是对这两个类的详细说明以及代码中关键部分的解释。 1. `java.util.Timer` 类: `Timer` 类是 Java 标准库...

    Quartz定时器介绍与简单使用

    ### Quartz定时器介绍与简单使用 #### 1.1 Quartz介绍 Quartz 是一款功能强大的开源任务调度框架,它完全采用 Java 编写而成。该框架允许开发人员以灵活的方式定义作业及其触发规则,从而实现对任务的定时调度。...

    Java中Spring使用Quartz任务调度定时器

    Quartz是一个开源的作业调度框架,由Java编写,它可以独立使用,也可以与J2EE和J2SE应用结合。它的主要功能是按照预定的时间间隔或特定时间执行任务,类似于Windows的任务计划程序或.NET下的Windows服务。 Quartz...

    Spring 定时器.txt

    其中,`period` 属性用于设置任务执行的时间间隔,例如上面的例子中设置为 `86400000`,表示每隔一天(24小时)执行一次任务。 ##### 2.3 TimerFactoryBean 的使用 为了更方便地管理和配置多个定时器,可以使用 `...

    spring 定时器

    Quartz 是一个开源的作业调度框架,它完全由 Java 写成,并设计用于 J2SE 和 J2EE 应用中。它提供了巨大的灵活性而不牺牲简单性。你能够用它来为执行一个作业而创建简单的或复杂的调度。本系统结合通过 Spring 来...

    JAVA石英钟,每一分钟都有报时

    在Java中,我们可以使用`java.time`包中的类来处理日期和时间,如`LocalTime`用于表示一天中的时间,`Clock`类可以获取当前系统时间,而`Duration`则用来计算两个时间点之间的间隔。对于每分钟的定时任务,我们可以...

    资料网叶 定时器 时间日期 用法

    1. **extern**:此关键字用于声明一个变量或函数在其他文件中定义,使得其他文件可以访问它。它告诉编译器变量或函数是在别处定义的,需要链接时查找其定义。 2. **static**: - 在函数内部,`static`修饰的变量在...

    定时器Quartz使用说明

    2. **为什么不使用 java.util.Timer?** - **答**:java.util.Timer 相对简单,只支持基于时间的任务调度。而 Quartz 不仅提供了更复杂多样的调度选项,还支持事务处理、集群等功能。 3. **如何 build Quartz 源码...

    使用JAVA.IO流线程的JAVA课设项目万年历记事本

    在这个“万年历记事本”课设项目中,开发者结合了这两个概念来创建一个功能丰富的应用程序。下面我们将深入探讨这个项目涉及的关键知识点。 1. **Java IO流**: - Java.IO流库提供了处理输入和输出数据的类,允许...

    Clock_java_

    `Timer`类的构造函数接受两个参数:间隔时间和一个`ActionListener`,在指定的时间间隔后,`ActionListener`的`actionPerformed`方法会被调用,我们在这里更新时间并刷新UI。 5. **事件监听器**:在Java GUI编程中...

    spring quartz定时器的简单配置和使用

    在这个示例中,我们创建了一个名为`MessageService`的类,该类包含了一个`printLog`方法,用于打印当前执行次数。 ```java package cn.yulon.service; public class MessageService { private int i; public ...

    JAVA 实现延迟队列的方法

    JAVA 实现延迟队列的方法是指在 JAVA 中实现延迟队列的方法,即在特定的延迟时间后触发某个事件,这种机制广泛应用于日常开发的场景中,例如用户登录之后5分钟给用户做分类推送、用户多少天未登录给用户做召回推送、...

    用Java语言编写窗口万年历

    该项目不仅展示了如何使用Java Swing库构建一个完整的桌面应用程序,还涉及到了日期处理、事件监听、定时器等关键技术点。通过这个项目,开发者不仅可以学习到GUI应用程序的设计思路,还能深入理解Java中日期与时间...

    spring定时器配置

    `myTask`是你要定时执行的任务,这里以`ReceiveWareJob`为例,它是一个实现了任务逻辑的Java类。`task:annotation-driven`启用基于注解的定时任务,指定`taskScheduler`为调度器。 接下来,我们需要在`...

    JAVA双人游戏飞机大战项目(适合刚学JAVA面向对象、API的新手参考)

    本项目“JAVA双人游戏飞机大战”就是一个针对初学者的绝佳实践案例,旨在帮助新手更好地理解和应用这些知识点。 首先,我们要明确面向对象编程的基本概念。面向对象编程强调将现实世界中的实体抽象为类,通过实例化...

    图形学课程设计java动画

    在本“图形学课程设计”项目中,我们重点关注的是使用Java编程语言来创建一个日出日落动画。这个动画展示了太阳从地平线上升起直至落下,为观众呈现了一天的时间变化。通过这个项目,学生可以深入理解计算机图形学的...

    spring定时器

    delay 设置为 3000 毫秒,意味着任务将在配置完成后3秒钟首次运行。 2. Quartz 调度器 Java 的 Timer 类适用于简单的定时任务需求,但当任务调度变得复杂,例如需要精确的定时规则、复杂的依赖关系或并发控制时,...

Global site tag (gtag.js) - Google Analytics