在spring中使用定时任务

1,在pom文件中引入quartz

<dependency>
   <groupId>quartz</groupId>
   <artifactId>quartz</artifactId>
   <version>1.5.2</version>
</dependency>
2,在spring配置文字中配置
<!-- 要调用的工作类 -->
     <bean id="quartzJob" class="wusc.edu.pay.web.boss.job.LicenseNoValidJob"></bean>
     <!-- 定义调用对象和调用对象的方法 -->
     <bean id="jobtask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
         <!-- 调用的类 -->
         <property name="targetObject">
             <ref bean="quartzJob"/>
         </property>
         <!-- 调用类中的方法 -->
         <property name="targetMethod">
             <value>doCheckLicenseNoValid</value>
         </property>
         <property name="concurrent">  
          <value>false</value>  
      </property>  
     </bean>
     <!-- 定义触发时间 -->
     <bean id="doTime" class="org.springframework.scheduling.quartz.CronTriggerBean">
         <property name="jobDetail">
             <ref bean="jobtask"/>
         </property>
         <!-- cron表达式 -->
         <property name="cronExpression">
             <!-- 每天凌晨5点触发,时间可配置 
             0 0 5 * * ? 每天5点执行
             0/9 * * * * ? 9秒钟执行一次
              -->
             <value> 0 0 5 * * ?</value>
         </property>
     </bean>
     <!-- 总管理类 如果将lazy-init='false'那么容器启动就会执行调度程序  -->
     <bean id="startQuertz" lazy-init="false" autowire="no" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
         <property name="triggers">
             <list>
                 <ref bean="doTime"/>
             </list>
         </property>
     </bean>
3,在代码中编写业务逻辑
创建
LicenseNoValidJob类并编写
doCheckLicenseNoValid方法返回值为空 列如
public class  LicenseNoValidJob{ 
       public void doCheckLicenseNoValid(){ 
              //执行的定时器任务 
       } 
}

posted @ 2017-04-26 16:35  海尚书  阅读(111)  评论(0编辑  收藏  举报