最近学习了一个quartz 和spring 的定时调度
这个技术的关键是。xml文件的配置问题
调度的任务:
这个技术的关键是。xml文件的配置问题
<?xml version="1.0" encoding="GBK"?>
<!-- 指定Spring配置文件的Schema信息 -->
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<!-- 配置DAO组件的模板 -->
<!-- 线程执行器配置,用于任务注册 -->
<!-- 启动触发器的配置开始 -->
<bean name="startQuertz" lazy-init="false" autowire="no"
class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="processFileJobTrigger" />
</list>
</property>
</bean>
<!-- quartz-2.x的配置 -->
<bean id="processFileJobTrigger"
class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<property name="jobDetail">
<ref bean="processFileJobDetail"/>
</property>
<property name="cronExpression">
<value>0 05 23 * * ?"</value>
</property>
</bean>
<!-- 调度的配置结束 -->
<!-- job的配置开始 -->
<bean id="processFileJobDetail"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject">
<ref bean="processFileJob"/>
</property>
<property name="targetMethod">
<value>work</value>
</property>
</bean>
<!-- 工作的bean -->
<bean id="processFileJob" class="com.test.job.ProcessFile">
</bean>
</beans>
调度的任务:
public void work(){
File[]files = getAllFile();
int monthAgeTime = getMonthAgeTime();
for(File file:files){
if(judgeIsDele(file, monthAgeTime)){
file.delete();
}
}
}