quartz插件化

来源:互联网 发布:绅士仓库新域名 编辑:程序博客网 时间:2024/06/08 18:09

  我们公司大部分业务都是基于定时的任务,特别适合使用quartz这类框架解决定时问题。具体quartz的使用,看官方文档就可以了。下面我谈谈我们公司对quartz插件化的封装。

 我们使用jfinal框架,封装了一个QuartzPlugin类,实现了final的plugin接口。然后在start方法里面定义了quartz初始化的一些类和数据,其中灵活的地方在于,我们定义了一个properties文件,里面定义了Jobs的属性,在QuartzPlugin的start方法执行的时候,回去加载properties文件,逐个job信息进行加载。

 在实际使用中,开发就变得相对简单了,不需要关注job任务是如何被调度的。只需要在程序中定义一个类实现job接口,填充业务代码,然后在properties文件里面填写该job三个属性:

 a.job=类全名
 a.cron=0/60 0/1 * * * ? 
 a.enable=false

 这样的封装就赋予框架新的技能,大大提高了开发人员的开发效率。