在web.xml中配置监听器类
<listener>
<listener-class>
类路径
</listener-class>
</listener>
创建监听器类
public class task implements ServletContextListener{
//销毁方法
public void contextDestoryed(ServletContextEvent arg0){
}
//初始化方法
public void contextInitialized(ServletContextEvent arg0){
try{
JobDetail job = new JobDetail("","",taskImpl.class);
StdSchedulerFactory std = new StdSchedulerFactory();
Scheduler sc = std.getScheduler();
CronTrigger ct = new CronTrigger("","");
CronExpression ce = new CronExpression("0 0 6 * * ?");
ct.setCronExpression(ce);
sc.scheduleJob(job,ct);
sc.start();
}catch (Exception e){
e.printStackTrace();
}
}
}
//具体的业务逻辑实现类
public class taskImpl implements Job{
public void execute(JobExecutionContext arg0) throws JobExecutionException{
//具体的业务逻辑实现类
}
}
关于CronExpression的时间配置
规则:[秒][分][时][日][月][周][年]
* 表示所有的值,例如位于秒位时表示每一秒都会触发
? 表示不指定值,设计者并不关心该位值的信息
- 表示区间,例如在分位上设置10-12 ,表示10,11,12分时均会触发任务
, 表示多个值,例如在周位设置"MON,FRI"表示每周一和周五会触发任务
/ 表示递增触发,例如在分位设置5/15,表示在5,20,35,50分时会触发任务
L 表示最后,如果前面加上数字,如"6L"在周位上,表示该月的最后一个周五
W 离指定日期最近的工作日(周一至周五),如日位上设置"15W"表示离该月151号最近的工作日
如日位上设置"LW",表示本月最后一个工作日
# 表示序号,每月的第几周星期几,如周位上设置"6#3"表示每月的第三个周星期六
java利用spring的接口实现定时任务
最新推荐文章于 2023-08-14 14:54:03 发布