spring整合Quartz定时器

据说版本要对的上,

Spring 3.0版本中内置的Quartz版本是<2.0

1,java类

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package com.xy.utils.quartz; 
   
import org.joda.time.DateTime; 
import org.slf4j.Logger; 
import org.slf4j.LoggerFactory; 
   
/**
 * 测试定时器类
 * @author javaw
 *
 */ 
public class TestQuartz { 
         
       public static Logger logger = LoggerFactory.getLogger(TestQuartz.class);   
       public void TestMethod(){ 
            logger.info("Auto Execute TestMethod start! Date={}" ,new DateTime().toString("YYYY-MM-DD HH:mm:ss" )); 
            logger.info("**********测试跑批类************"); 
            logger.info("Auto Execute TestMethod end! Date={}" ,new DateTime().toString("YYYY-MM-DD HH:mm:ss" )); 
      
}

2,配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<!-- 实例化bean --> 
<bean id= "testMethodQuartz" class ="com.xy.utils.quartz.TestQuartz"/> 
   
<!-- 配置MethodInvokingJobDetailFactoryBean --> 
<bean id= "testTaskMethod" 
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"
       <property name="targetObject" ref="testMethodQuartz"/> 
       <property name="targetMethod" value="TestMethod"/> 
       <property name="concurrent" value="false"/> 
</bean> 
   
<!-- 配置定时表达式 --> 
<bean id= "testTaskTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean"
       <property name="jobDetail" ref="testTaskMethod" />  
      <!-- 每一分钟执行一次 -->  
      <property name="cronExpression" value="0 0/1 * * * ?" />  
</bean> 
   
<!-- 配置调度工厂 --> 
<bean id= "testSchedulerFactoryBean" 
    class="org.springframework.scheduling.quartz.SchedulerFactoryBean"
       <property name="triggers"
             <list> 
                   <ref bean="testTaskTrigger" /> 
             </list> 
       </property> 
</bean>

3,这里附带一下简单的时间表达式

Quartz中时间表达式的设置-----corn表达式

时间格式: <!-- s m h d m w(?) y(?) -->, 分别对应: 秒>分>小时>日>月>周>年,

举例:

1.每天什么时候执行:

<value>0 59 23 * * ?</value>: 如下为每天23:59:00开始执行

<value>0 0/1 * * * ?</value>:每一分钟执行一次

<value>0 1,2,3 11,12 * * ? </value>: 每天11:01,11:02,11:03; 12:01,12:02,12:03分执行任务

posted on   会走路的虾米  阅读(153)  评论(0编辑  收藏  举报

编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix

导航

点击右上角即可分享
微信分享提示