调度器(Quartz)
任务调度的时机(背景) 例如在开发购物网站时会遇到一个问题,因白天订单多流量大,为减轻网站压力要求一些不是太急的任务(如给注册用户发送广告邮件、清理日常垃圾信息等)放在凌晨流量较小时间段去执行,这个时候就需要使用到任务调度,指定在某个时间内执行某个任务 任务调度实现方式 借助java.util.Timer来实现的。对于更加复杂任务调度,Timer不太容易(定时器) 使用Spring的Quartz调度器可弥补Timer的不足,使开发者能完成各种复杂任务调度(调度器) spring调度器(Quartz) 介绍 Quartz调度器为调度工作提供更丰富的支持,与Java定时器一样,可使用Quartz指定每隔多少毫秒执行一个工作,但Quartz比Java的Timer优势在于Quartz允许调度一个工作在某个特定的时间或日期执行。 使用Quartz有两种方式实现 任务类继承QuartzJobBean 在配置文件中定义任务类和要执行的方法(借助:MethodInvokingJobDetailFactoryBean) Spring实现调度器基本步骤 第一步:创建一个用于指定执行任务的QuartzJobBean子类 QuartzJobBean实现org.quartz.Job接口。QuartzJobBean子类应当覆盖executeInternal()方法,在executeInternal(