Quartz定时器实现

1.写一个类继承于QuartzJobBean,并实现它的方法。

2.为了解决后续出现定时器执行两次的问题,新建一个applicationContext-quartz.xml 文件用来配置。

3.到web.xml文件再配一个applicationContext-quartz.xml


对应代码:

1. public class Job1 extends QuartzJobBean {


private int timeout;
private static int i = 0;
//调度工厂实例化后,经过timeout时间开始执行调度
public void setTimeout(int timeout) { 
this.timeout = timeout;
}

@Override
protected void executeInternal(JobExecutionContext arg0)
throws JobExecutionException {

System.out.println("------定时任务执行中…");

}


}



2.  <!-- 定时器开始 -->

<bean name="job1" class="org.springframework.scheduling.quartz.JobDetailBean">
           <property name="jobClass" value="com.yxw.util.Job1" />
           <property name="jobDataAsMap">
           <map>
            <entry key="timeout" value="0" />
           </map>
           </property>
         </bean>
         
         <bean id="CronTriggerBean" class="org.springframework.scheduling.quartz.CronTriggerBean">  
    <property name="jobDetail" ref="job1"></property>  
    <property name="cronExpression" value="0 15 0 24 * ?"></property>  //这里是设置每个月24日0点15分执行,时间设置可以去网上查
        </bean> 
         
         <bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean"  >
             <property name="triggers">
           <list>
             <ref bean="CronTriggerBean" />
           </list>
             </property>
         </bean>

<!-- 定时器结束 -->


 3.  web.xml文件配置

 <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:config/applicationContext.xml,classpath:config/applicationContext-quartz.xml</param-value>
  </context-param>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值