一、定时执行的类
public class AppMain {
public void work(){
//定时执行此方法
}
}
二、Spring配置Quartz
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <beans> <!-- 要调用的工作类 --> <bean id="classExe" class="com.test.AppMain"></bean> <!-- 定义调用对象和调用对象的方法 --> <bean id="testTask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> <!-- 指向工作类的bean id --> <property name="targetObject"> <ref bean="classExe"/> </property> <!-- 调用工作类中的方法 --> <property name="targetMethod"> <value>work</value> </property> </bean> <!-- 定义触发时间,在8-20点,每分钟执行一次 --> <bean id="doTime" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean"> <property name="jobDetail"> <ref bean="testTask"/> </property> <!-- cron表达式 --> <property name="cronExpression"> <value>0 0/1 8-20 * * ?</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> <property name="startupDelay" value="0"/> </bean> </beans>
参考:
http://www.cnblogs.com/baizhanshi/p/5694900.html