如何使用java.util.Timer在每天的指定时间(例如上午11:00 )运行任务?我使用的是JDK 1.4.2,我知道它很旧,但这是项目所需要的。
发布于 2009-09-30 15:55:17
Quartz是在Java环境中调度进程的最著名的解决方案,但是您有很多选择。请检查此列表:
是一个开源作业调度系统,可以与几乎任何J2EE或J2SE应用程序集成,也可以与其一起使用。Quartz可用于创建简单或复杂的时间表。
被设计为可以扩展并与任何项目集成。读取要执行的任务并将其存储在文件、数据库或EJB中,并提供web UI和基本swing GUI。
是一种用于J2EE应用程序的简单任务调度机制。这个库可以看作是对标准Java API中的Timer和TimerTask类的包装。要执行的任务及其频率的配置是基于XML的。
是用于Java2平台的调度器,它与UNIX cron守护进程非常相似。
的目标是为将企业的关键业务流程联系在一起的所有批处理文件和cron作业提供一些顺序和可见性。
提供调度程序服务。它是基于随涡轮提供的TurbineScheduler,但所有较旧的东西都已删除。目前只完成了非持久调度程序。它从组件配置xml文件加载计划的作业。
-Goal Oriented Scheduling for Java-是一种基于目标来组织处理优先级的方法。
是一个像恶魔一样运行的批处理程序,可以使用图形用户界面进行控制。作业排定程序对排定的程序、脚本以及任务处理的时间和频率使用XML配置。可以使用API将事件控制和日志记录交给您的作业。
是一个轻量级的Java调度库,它简单而小巧,但仍然支持在指定的时间间隔响起警报,作为一次性事件,或者在具有完全cron式控制的复杂计划上。
是一个用Java编写的批处理作业假脱机程序。与时间驱动的调度器相比,jBatchEngine是事件驱动的。
是一个开源的轻量级框架,旨在用Java语言创建容易、健壮和易于管理的批处理程序。
Super with and SuperWatchdog是一个为所有应用程序提供丰富图形用户界面的Java作业调度器。它是平台中立的。特别适合作为Linux和Solaris的作业调度器。它提供了Microsoft Windows的Scheduler的超级功能集。它提供了事件触发的调度。它可以在分布式环境中调度任务。一个任务将在网络中的所有机器中执行一次,且仅执行一次。所有任务都是假期可调的。即使每个工作都是备用工作,历史也将是重要任务的很好的痕迹。它支持国际化。
来源:
发布于 2009-09-30 15:26:46
查看TimerTask和Timer --两者都在该版本的JDK中。
Timer :
public void schedule(TimerTask task, Date firstTime, long period)
public void scheduleAtFixedRate(TimerTask task, Date firstTime, long period)将其设置为运行您想要的第一个日期,然后将一天中的毫秒数设置为您的延迟。
发布于 2009-09-30 15:26:53
你有可能使用像cron4j这样的库吗?它会让你的工作变得更容易!
https://stackoverflow.com/questions/1498837
复制相似问题