指定程序在每天凌晨2点运行:
1.初始化定时器
public void contextInitialized(ServletContextEvent arg0) { //自定义时间执行::::凌晨2点 Calendar cal = Calendar.getInstance(); cal.set(Calendar.HOUR_OF_DAY, 2); cal.set(Calendar.MINUTE, 0); cal.set(Calendar.SECOND, 0); Date date = cal.getTime(); //第一次执行定时任务的时间 每天早上2点 //此时要在 第一次执行定时任务的时间 加一天,以便此任务在下个时间点执行。如果不加一天,任务会立即执行。 if(date.before(new Date())){ date = this.addDay(date,1); } //0替换成cal.getTime(); timer = new Timer(); timer.schedule(new TimerTask(){ @Override public void run() { logger.info("每天0点开始执行取数"); GetWid(); //需要运行的方法 } }, date, 1000*60*60*24); }
2. 构建修改日期的方法
/** * 如果当前重启服务或者执行任务超过了设定的时间,程序会立即运行,需要在当前日期+1 * @param date * @param i * @return */ private Date addDay(Date date, int num) { Calendar startDT = Calendar.getInstance(); startDT.setTime(date); startDT.add(Calendar.DAY_OF_MONTH, num); return startDT.getTime(); }
相关推荐
Java定时器(java.util.Timer)是Java标准库中用于调度任务执行的重要工具,它允许我们按照预设的时间间隔执行特定的任务。在Java程序设计中,定时器常常用于实现周期性的任务,比如定时备份数据、定时检查系统状态...
Java定时器是Java编程语言中用于执行特定任务的调度工具,它允许程序员在指定的时间间隔后执行特定的代码块或任务。在Java中,我们主要使用`java.util.Timer`类和`java.util.TimerTask`类来实现定时器功能。这两个类...
### Java定时器实现详解 在Java编程中,定时任务是常见的需求之一,无论是服务器的定期维护、数据同步,还是客户端的动画更新等场景,都需要用到定时器来精确控制任务的执行时间。本文将深入解析一个基于Java的简单...
Java定时器(Timer)是Java语言中用于调度任务的一个重要工具,它可以帮助我们在特定时间执行一次或重复执行某个任务。这个“java定时器.rar”压缩包可能包含了关于如何使用Java定时器的相关示例代码和教程。 Java...
JAVA 中的定时器是指在特定的时间或时间间隔执行某个任务的机制。JAVA 中提供了多种方式来实现定时器,包括使用 Timer 和 TimerTask 类,使用 ScheduledExecutorService 等。 在 JAVA 中,Timer 和 TimerTask 是两...
例如,java.util.TimerTask任务仅支持每隔指定时间触发一次的模式。 在实现定时任务时,通常需要实现自定义的TimerTask类,它的run方法中包含需要执行的任务代码。然后,通过Timer类实例化一个定时器,创建计时器...
例如,`schedule(TimerTask task, long delay)`方法会在指定的延迟后执行任务,`schedule(TimerTask task, Date time)`则会在特定的日期和时间执行任务。此外,`schedule(TimerTask task, long delay, long period)`...
Java定时器,全称为`java.util.Timer`类和配套的`TimerTask`类,是Java标准库中提供的一种定时执行任务的工具。这个强大的计时器功能强大,尤其适合于批量处理任务,如数据同步、日志清理等场景,因此在IT行业中被...
总结一下,Java定时器(java.util.Timer)和TimerTask配合使用,可以方便地实现定时执行任务的需求。通过结合Servlet监听器,我们可以确保定时器在Web应用启动时启动,并在应用关闭时停止,确保任务的生命周期与Web...
`Timer`类是Java定时器的核心,它可以调度`TimerTask`实例在未来的某个时间点运行。创建一个`Timer`对象后,可以调用其`schedule`或`scheduleAtFixedRate`方法来安排任务执行。`Timer`是线程安全的,意味着多个线程...
- `contextInitialized()`方法在应用启动时初始化一个`Timer`对象,并安排了一个名为`MailTimerTask`的任务,使其每天在指定时间(例如:14:17)运行一次。 - `contextDestroyed()`方法在应用关闭时取消所有已安排的...
Java定时器Timer是Java语言中用于在线程中定时执行任务的工具类,它提供了调度任务的能力,可以在指定的延迟后或者按照固定的周期执行任务。Timer类位于`java.util`包中,是线程安全的,但并不保证实时执行,这意味...
Java定时器(Timer)是Java语言中用于调度任务的一个重要工具,它允许程序在特定时间间隔执行预定的任务,或者在指定的时间点执行一次性任务。这个功能对于构建具有定时任务需求的应用程序,如定期数据同步、后台...
Java定时器应用主要涉及到`Timer`类和`TimerTask`类,这两个类是Java.util包下的,用于实现延时和周期性任务的调度。在Java编程中,有时我们需要执行一些任务,但不希望立即执行,而是希望在特定的时间点或者按照...
- **定时任务实现**:设置定时器,在指定时间执行数据库操作。 **3.4 打包与部署** - **WAR文件生成**:将项目打包成WAR文件。 - **部署至Tomcat**:将WAR文件放置于Tomcat的webapps目录下。 - **server.xml配置**...
让我们深入探讨Java定时器的工作原理、如何创建以及可能遇到的问题。 首先,Java中的定时器主要依赖于`java.util.Timer`和`java.util.TimerTask`这两个类。`Timer`类负责调度任务,而`TimerTask`则代表了需要执行的...