quartz实现定时任务
- 最近手头有一个任务,可视化的定时任务总是在开启之后某个时间自动停止,且日志中找不到提醒。迷迷糊糊弄好很久也没搞好,就在快要放弃的时候,听了两天回头看看了一下,终于解决了。
项目代码中有两个部分用到了代码
一是用Spring Xml配置的定时任务,使用的是默认的quartz.properties属性文件,所以scheduler实例的名字是默认的;
二是用java代码实现的,发现也是使用默认的quartz.properties属性文件,所以scheduler实例的名字是默认的;-
于是猜测是不是两者有冲突,导致任务失败,试试吧,然后就复制了一个quartz.properties文件,把文件名修改了,然后在StdSchedulerFactory 通过传入一个外部文件名而被初始化,在这个外部文件中包含了这些配置项。应使用 initialize() 的替代方法形式如下:
public void initialize(String filename) throws SchedulerException;
- 设置scheduler的实例名产生的方式为auto