java 创建定时任务

其中定义触发时间可以有两种方法,如下:
 
   <!-- 要调用的工作类 -->
     <bean id="quartzJob" class="com.cifcms.lucene.dao.impl.SearchDaoImpl"></bean>
     <!-- 定义调用对象和调用对象的方法 -->
     <bean id="jobtask"
      class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
          <!-- 调用的类 -->
          <property name="targetObject">
           <ref bean="quartzJob" />
          </property>
          <!-- 调用类中的方法 -->
          <property name="targetMethod">
           <value>addIndex</value>
          </property>
     </bean>
     
     <!-- 定义触发时间 第一种方法 -->
    <!--<bean id="simpleTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">  
          <property name="jobDetail" ref="jobtask" />  
          <property name="startDelay" value="60000" /><!-- 调度工厂实例化后,经过60秒开始执行调度-->    
          <property name="repeatInterval" value="1800000" /> <!--每三十分钟调度一次  -->  
    </bean> -->
     
     <!-- 定义触发时间   每天的12点和0点执行-->
     <bean id="simpleTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
          <property name="jobDetail">
           <ref bean="jobtask"/>
          </property>
          <property name="cronExpression">
           <value>0 0 12,0 ? * *" </value>
          </property>
     </bean>
    
     
    <!-- 总管理类 如果将lazy-init='false'那么容器启动就会执行调度程序 -->
    <bean id="startQuertz" lazy-init='true' autowire="no"
      class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
          <property name="triggers">
           <list>
                <ref bean="simpleTrigger"/>
           </list>
          </property>
    </bean>


你可能感兴趣的:(java 创建定时任务)