我是靠谱客的博主 雪白哑铃,最近开发中收集的这篇文章主要介绍使用quartz实现定时器功能,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

首先导入两个包
 1
<dependency>
 2
<groupId>org.quartz-scheduler</groupId>
 3
<artifactId>quartz</artifactId>
 4
<version>2.2.2</version>
 5
</dependency>
 6
<dependency>
 7
<groupId>org.quartz-scheduler</groupId>
 8
<artifactId>quartz-jobs</artifactId>
 9
<version>2.2.2</version>
10
</dependency>

 

 
然后写一个类用来当作定时器类,同时写一个方法为定时器执行的方法:
 1 package com.practice.prac.service.Impl;
 2
 3 import org.springframework.stereotype.Component;
 4
 5 @Component
 6 public class TestTime {
 7
 8
public void print(){
 9
System.out.println("----------");
10 
}
11 }

 

这里是TestTime类和print方法
在xml文件中定义以下bean:
 1 <!-- 以下为quartz实现定时器 -->
 2
 3
<!-- 指明作为定时器的类 -->
 4
<bean id="TestTime" class="com.practice.prac.service.Impl.TestTime"></bean>
 5
<!-- 配置对应的信息 -->
 6
<bean id="TestTimeDetail"
 7 
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
 8
<!-- 指定任务类 -->
 9
<property name="targetObject" ref="TestTime" />
10
<!-- 指定任务执行的方法 -->
11
<property name="targetMethod" value="print" />
12
</bean>
13
<!-- 配置触发器 -->
14
<bean id="TestTimeTrigger"
15 
class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
16
<property name="jobDetail" ref="TestTimeDetail" />
17
<!-- 每5秒运行一次 -->
18
<property name="cronExpression" value="0/5 * * * * ?" />
19
</bean>
20
21
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
22
<property name="triggers">
23
<list>
24
<!-- <ref bean="exampleJobTrigger" /> -->
25
<ref bean="TestTimeTrigger" />
26
</list>
27
</property>
28
</bean>

 

其中名字跟ref对应,指定任务类和指定任务执行的方法对应上就可以了。
定时触发在触发器的cronExpression处定义,具体表达式含义在另一篇文章中。

转载于:https://www.cnblogs.com/kangyun/p/5616106.html

最后

以上就是雪白哑铃为你收集整理的使用quartz实现定时器功能的全部内容,希望文章能够帮你解决使用quartz实现定时器功能所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部