
本文链接:
首先应该引入mvn依赖。只需引入spring-boot-starter-quartz这一个依赖就可以。
org.springframework.boot
spring-boot-starter-quartz

接下来就是配置:quartz.properties
org.quartz.threadPool.class=org.quartz.simpl.SimpleThreadPool//线程池
org.quartz.threadPool.threadCount=10 //线程数量
org.quartz.jobStore.class=org.quartz.simpl.RAMJobStore //基于内存模式

配置好了然后,开始我们的第一个定时任务。
(1)先建立一个task,
```
public class MyFirstJob {
private Logger logger = LoggerFactory.getLogger(MyFirstJob.class);
public void execute(){
logger.info("定时任务执行");
}
}
```
(2) 这里运用的是xml模式配置定时任务:

<bean id="myFirstTask" class="com.didi.es.boss.morgan.task.MyFirstJob"/>
<bean id="myFirstJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject" ref="myFirstTask"/>
<property name="targetMethod" value="execute"/>
<property name="concurrent" value="false"/>
</bean>
(3)定义触发器:
<!-- 调度触发器 -->
<bean id="myFirstJobTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<property name="jobDetail" ref="myFirstJob"/>
<property name="cronExpression" value="*/2 * * * * ?"/>//每两秒执行一次。
</bean>

(4)定义Scheduler
Scheduler就是Quartz的控制中心,所有任务都是由它来设施。
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="myFirstJobTrigger"/>
</list>
</property>
<property name="taskExecutor" ref="jobExecutor"/>
</bean>
!!!重点说一下boot(x:)可以删除吗,这里jobExecutor可以自己按照业务意愿配置线程池。
<!-- 线程执行器配置,用于任务注册 -->
<bean id="jobExecutor" class="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor">
<property name="corePoolSize" value="10"/> //核心线程10个。
<property name="maxPoolSize" value="50"/>
<property name="queueCapacity" value="500"/>
</bean>
4.已经写好了任务,接下来就是运行了boot(x:)可以删除吗,启动application.
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-120833-1.html
还有马航是怎么回事
你知道美国在我周边煽动别国闹事
10月16日谁回去看小王子啊