1.配置一个专门的Quartz配置文件:applicationContext-quartz.xml
对应的设置网上有,这里不复述了,参照这里的格式改改就好
2.将这个配置文件加载到web.xml里面
3.编写你的Quartz类
<!-- Quartz本地Schduler -->
<bean id="localQuartzScheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean" lazy-init="false">
<!-- Triggers集成 -->
<property name="triggers">
<list>
<ref bean="cronTrigger" />
</list>
</property>
<!-- Quartz配置 -->
<property name="quartzProperties">
<props>
<prop key="org.quartz.threadPool.threadCount">5</prop>
</props>
</property>
<!-- 启动时延期3秒开始任务 -->
<property name="startupDelay" value="3" />
</bean>
<!-- Cron式Trigger定义 -->
<bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail" ref="cronJobDetail" />
<!-- 每天凌晨 2 点执行一次 -->
<property name="cronExpression" value="0 0 2 * * ?" />
</bean>
<!-- Cron JobDetajil, 基于MethodInvokingJobDetailFactoryBean调用普通Spring Bean -->
<bean id="cronJobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject" ref="cronJob" />
<property name="targetMethod" value="execute" />
<!-- 同一任务在前一次执行未完成而Trigger时间又到时是否并发开始新的执行, 默认为true. -->
<property name="concurrent" value="false" />
</bean>
<!-- 被Cron执行的普通Spring Bean -->
<bean id="cronJob" class="com.basepackage.quartz.ExpiresVideoCheck" />
对应的设置网上有,这里不复述了,参照这里的格式改改就好
2.将这个配置文件加载到web.xml里面
<!-- Spring ApplicationContext配置文件的路径,可使用通配符,多个路径用,号分隔 此参数用于后面的Spring Context
Loader -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:/applicationContext.xml,classpath*:/applicationContext-quartz.xml</param-value>
</context-param>
3.编写你的Quartz类
public class ExpiresVideoCheck {
public void execute() {
//System.out.println("quartz-------");
}
}