一、spring注解方式
<!--<!–配置文件添加允许Spring注解–>-->
<!--<task:annotation-driven scheduler="qbScheduler"/>-->
<!--<task:scheduler id="qbScheduler" pool-size="10"/>-->
<!--类-->
import org.springframework.scheduling.annotation.Scheduled
class XXX{
@Scheduled(cron="0 */2 * * * ?") //这里是两分钟触发一次
public void METHOD(){
//方法要做的事
}
}
二、XML方式
<?xml version="1.0"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="quartzProperties">
<props><!--用于存储内存中的调度信息-->
<prop key="org.quartz.jobStore.class">
org.quartz.simpl.RAMJobStore
</prop>
</props>
</property><!--触发器创建-->
<property name="triggers">
<list>
<ref bean="XXXTrigger"/>
</list>
</property>
</bean>
<!-- 方法名称去执行任务的一个工厂bean -->
<bean id="taskJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject" ref="XXX" /> //要调用的对象
<property name="targetMethod" value="METHOD" />//要调用的方法
<property name="concurrent" value="false" /><!--多个job不会并发运行,默认是true-->
</bean>
<!-调用对应触发器->
<bean id="XXXTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail" ref="taskJob" />//要调度的任务对象BEAN
<property name="cronExpression" value="0 */2 * * * " />//每两分钟执行一次
</bean>
<!--定义调用目标类-->
<bean id="XXX" class="com.xx.xx.xx.task.xxxQuartz"/>
</beans>
来源:oschina
链接:https://my.oschina.net/u/4289674/blog/3572592