1.配置文件设置如下:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<!-- 配置调度器工厂(SchedulerFactoryBean) triggers里面放置所有任务触发器-->
<bean name="startQuertz"
class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="myJobTrigger"></ref>
</list>
</property>
</bean>
<!-- 配置Cron触发器(CronTriggerFactoryBean) 定义一个触发器的任务内容,cronExpression定义,每隔1分钟执行1次-->
<bean id="myJobTrigger"
class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<property name="jobDetail">
<ref bean="myJobDetail"/>
</property>
<property name="cronExpression">
<value>0/59 * * * * ? </value>
</property>
</bean>
<!-- 配置方法调用任务工厂(XXXJobDetailFactoryBean) myJob映射的是任务类 doWork是执行方法-->
<bean id="myJobDetail"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject">
<ref bean="myJob" />
</property>
<property name="targetMethod">
<value>doWork</value>
</property>
</bean>
<!-- 配置自定义的时间任务(Job) -->
<bean id="myJob" class="com.app.jsjx.quartz.PerformanceJob" />
</beans>
2.任务类如下:
package com.base;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
@Component
@Transactional
public class PerformanceJob {
Logger log = LoggerFactory.getLogger(PerformanceJob.class);
public void doWork() throws Exception {
log.info("定时任务开始执行.........." + new Date());
}
}
3.cron表达式在线学(生)习(成),超级好用的呢 (*^▽^*):