发布网友 发布时间:2022-04-22 03:51
共1个回答
热心网友 时间:2022-04-10 22:49
public static void
main(String[] args) {
try
{
Scheler
scheler = StdSchelerFactory.getDefaultScheler();
scheler.start();
JobDetail
jd = new JobDetail("test", "test_group", testJob.class);
CronTrigger
ct = new CronTrigger("test", "test_group");
//你修改下面的 表达式 就能满足了
//时间格式: <!-- s m h d m w(?) y(?) -->, 分别对应: 秒>分>小时>日>月>周>年
ct.setCronExpression("0/5 * * * * ?");
scheler.scheleJob(jd,ct);
//System.out.println("Scheler started at " + new Date());
}
catch (SchelerException e) {
//TODO Auto-generated catch block
e.printStackTrace();
}
catch (ParseException e) {
//TODO Auto-generated catch block
e.printStackTrace();
}
}
追问这样是还是在一定时间间隔内循环触发啊,不是只执行一次。
比如我要在2014/3/28 09:00:00 这个时间执行,之后就不再执行的话,这种方式还是不行。
追答晕 谁和你说的 你配置 每秒 当然 循环了 你把后面日期参数都写死了 怎么会循环呢
ct.setCronExpression("0/5 * * * * ?"); 你改成 “0 0 0 29 3 2014” 就是 2014年 3月 29日 0点 0分 0秒 执行?他怎么可能还在执行?难道以后还有这个时间 搞技术的认真点 别没仔细想 就觉得所以然