用JDring包设置类似于 cron的日程提醒
发布时间:2007.11.09 04:55 来源:赛迪网技术社区 作者:baocl
UNIX操作系统用cron守护进程来在特定的时间和日期运行脚本。Java Development Kit (JDK) 1.3的java.util.Timer类允许开发者设置每隔N毫秒执行一些任务,但没有类似cron的结构来指明一天或一周中的特定时间。
这个缺口现在被JDring包堵上了,它是Olivier Dedieu编写的一个Java的类似cron的日程安排提醒程序。JDring.zip文件中包含这些部分:
源代码:这不是必需的,可以不管它。
Javadoc文档:把这个放到你的docs目录中去。
Jar文件:这个文件包含编译好的类,要把它放到你的classpath中去。
使用JDring有两步。第一步要创建一个AlarmListener,这是一个包含一个方法的接口:
void handleAlarm(AlarmEntry entry);
AlarmEntry参数提供了日程提醒设置在什么时刻的细节。下面是使用AlarmListener的一个简单例子:
import com.jalios.jdring.AlarmEntry;
import com.jalios.jdring.AlarmListener;
public class Buzzing implements AlarmListener {
private String buzz;
public Buzzing(String buzz) {
this.buzz = buzz;
}
public void handleAlarm(AlarmEntry entry) {
System.err.println("滴零零……");
System.err.println(buzz);
}
}
使用JDring的第二步是通知一个中央管理者AlarmListener应该在什么时候响铃。这个管理者是AlarmManager的一个实例,它有一个空的构造器。在特定时刻调用日程提醒和cron类似,像下面这样:
AlarmManager.addAlarm(minute, hour, day of month, month, day of week, year,
AlarmListener)
下面的示例代码示范了一个设置成在每个小时的第20分钟开始响铃的日程提醒:
import com.jalios.jdring.AlarmManager;
import com.jalios.jdring.PastDateException;
public class SetAlarm {
static public void main(String[ ] args) {
AlarmManager mgr = new AlarmManager( );
mgr.addAlarm(20, -1, -1, -1, -1, -1, new Buzzing( ));
}
}
这个例子示范了如何设置在每个星期五的下午五点提醒:
manager.addAlarm(00, 17, -1, -1, Calendar.FRIDAY, -1, new Buzzing());
// java.util.Calendar
JDring还可以用来记住一个周年纪念日,像下面这样:
manager.addAlarm(00, 12, 20, Calendar.MARCH, -1, -1,
new Buzzing("记住明天是周年纪念!") );
分享到:
相关推荐
在实际开发中,Vue-Cron可以应用于各种需要定时任务配置的场景,例如后台任务调度、自动化流程控制等。通过与Vue.js应用的其他组件和状态管理库(如Vuex)集成,Vue-Cron能够帮助开发者构建出强大的定时任务管理系统...
在CentOS系统中,安装vixie-cron通常通过包管理器完成,如使用`yum install vixie-cron` 命令。安装完成后,需要配置`/etc/crontab` 文件,并可能需要编辑`/etc/cron.d/*` 目录下的其他配置文件以添加自定义任务。...
在Java世界中,Spring框架也广泛使用cron表达式来实现定时任务。这个"cron表达式自动生成页面版"是一个实用的工具,它允许用户在网页界面上自定义时间规则,然后生成对应的cron表达式,方便地用于各种定时任务的配置...
在.NET环境中,解析Cron表达式通常依赖于第三方库,如Quartz.NET或Hangfire等,它们提供了Cron表达式的解析和转换功能。标签中提到的"Cron.dll"可能是一个这样的库,但具体使用方法需要查看库的文档或源码。 在提供...
【Cron前端生成工具】是一种方便用户在前端环境中设置和管理Cron表达式的实用工具,类似于http://cron.qqe2.com/所提供的在线服务。Cron是Unix/Linux系统中的一种任务调度命令,允许用户预设定时任务,按照指定的...
安装这个包后,系统会启动cron服务,允许用户通过crontab命令设置定时任务。 **crontabs** crontabs组件则是用于管理和编辑用户crontab文件的工具。crontabs-1.11-2.20101115git.fc15.noarch.rpm这个文件是一个...
3. **设置调度**:使用jDring提供的API,设定任务的执行时机,可以是立即执行、定时执行或周期性执行。 4. **启动调度器**:最后,启动jDring的调度器,它将负责监控和执行所有注册的任务。 **四、高级特性** 1. ...
Cron表达式源自Unix的crontab命令,用于设置周期性被执行的任务。它使用一组字符串来描述时间序列,包括秒、分钟、小时、日期、月份和星期几。Java中的Cron表达式解析通常是通过Spring框架的`org.springframework....
Cron是一种广泛使用的任务调度工具,它源自Unix操作系统,用于安排周期性的任务执行。Cron表达式是Cron系统的核心,它定义了任务的执行时间。在这个“Cron_cron_Cron表达式解析_”的资源中,我们将深入探讨Cron...
在JavaScript中,我们可以利用类似cron的表达式来实现定时任务,例如通过`jquery-cron`库。这个库提供了一个用户友好的界面,帮助开发者在Web应用中创建和管理cron表达式。 cron表达式由5-6个(或者7个,如果包含...
cron表达式是Linux系统中广泛使用的定时任务调度工具,它允许用户定义周期性的任务执行计划。在本项目中,"cron可视化前端界面.zip" 提供了一个前端界面,用于图形化地创建和验证cron表达式,并展示由该表达式确定的...
为了获取用户在cron选择器中设置的值,我们需要监听`cronChange`事件: ```javascript layui.use(['cron'], function(){ var cron = layui.cron; cron.render({ elem: '#cronDemo', done: function(value, ...
cron是Unix/Linux操作系统中的一个定时任务调度命令,用于设置周期性被执行的任务。在这个场景中,我们讨论的是一个基于Vue的Cron表达式组件,它允许用户在前端界面中动态生成和配置cron表达式。Vue.js是一个流行的...
"网页版Cron的源代码"可能是指与这个Winform应用相关的Web版本,或者是作者提供的另一个项目,适用于Web环境的Cron实现。 【标签】"QuartZ Cron C#"清楚地指出这个项目的核心技术栈:Quartz.NET(一个C#实现的作业...
在实际应用中,这样的脚本可能包含了设置cron定时器的命令,比如使用`crontab`命令来添加一条新的定时任务。`del_logs_cron_start.sh`可能包含的内容有检查日志文件的存在、设定清理日志的时间(如每天凌晨)以及...
3. **有开始日期和结束日期**:不同于标准`cron`表达式仅基于时间间隔定义任务,此生成器允许指定任务开始和结束的具体日期,这对于一次性或临时性的任务非常有用。 4. **最全面的表达式生成**:这个生成器可能包含...
它不仅适用于Linux环境下的cron任务,也可以应用于支持cron表达式的其他平台或服务,如某些云服务的定时任务设置。通过HTML和CSS的结合,这个工具提供了直观的交互方式,让非技术人员也能轻松理解并生成cron表达式。
它提供了丰富的功能,包括创建、编辑、查看和提醒日程事件,用户界面友好,可自定义程度高,适用于多种应用场景。这个项目的源代码压缩包为“php-calendar-2.0-rc2.tar.gz”,包含了完整的开发资源,开发者可以下载...
cron表达式是一种在Unix和其他类Unix系统中广泛使用的定时任务调度工具,用于配置计划任务的执行。这个压缩包“可直接使用-cron表达式前端生成工具.zip”提供了一个基于HTML、CSS和JavaScript实现的前端工具,它使得...
cron表达式是Unix/Linux系统中用于定时任务调度的一种机制,而在Java中,通过Quartz、Spring框架等库,也可以使用cron表达式来实现定时任务。本项目提供的"Cron表达式生成器java版"是一个基于Java 1.8的工具,能够...