在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(){
//执行的定时器任务
}
}