第1种方式:
public class PayJob extends QuartzJobBean {
@Override
protected void executeInternal(JobExecutionContext context) throws JobExecutionException {
System.out.println("PayJob开始执行。。。。。。");
}
}
public class PunchJob extends QuartzJobBean {
@Override
protected void executeInternal(JobExecutionContext context) throws JobExecutionException {
System.out.println("PunchJob开始执行。。。。。。");
}
}
<!-- 支付的Job作业类 -->
<bean id="payJobDetailBean" class="org.springframework.scheduling.quartz.JobDetailBean">
<property name="jobClass" value="com.iteye.schedule.PayJob"></property>
</bean>
<!-- 打卡的Job作业类 -->
<bean id="punchJobDetailBean" class="org.springframework.scheduling.quartz.JobDetailBean">
<property name="jobClass" value="com.iteye.schedule.PunchJob"></property>
</bean>
<!-- 支付的定时调度器 -->
<bean id="payCronTriggerBean" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail" ref="payJobDetailBean"></property>
<!-- 每分钟执行一次 -->
<property name="cronExpression" value="0 0/1 * * * ?"></property>
</bean>
<!-- 打卡的定时调度器 -->
<bean id="punchCronTriggerBean" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail" ref="punchJobDetailBean"></property>
<!-- 每天的16:38:00执行一次 -->
<property name="cronExpression" value="0 38 16 * * ?"></property>
</bean>
<!-- 总调度器 -->
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref local="payCronTriggerBean"></ref>
<ref local="punchCronTriggerBean"></ref>
</list>
</property>
</bean>
第2种方式:
public class PayJob {
public void startJob() {
System.out.println("PayJob开始执行。。。。。。");
}
}
<!-- 支付的Job作业类 -->
<bean id="payJobDetailBean" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject">
<bean class="com.iteye.PayJob" />
</property>
<property name="targetMethod" value="startJob" />
<property name="concurrent" value="false" /><!-- 作业不并发调度 -->
</bean>
<!-- 支付的定时调度器 -->
<bean id="payCronTriggerBean" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail" ref="payJobDetailBean"></property>
<!-- 每分钟执行一次 -->
<property name="cronExpression" value="0 0/1 * * * ?"></property>
</bean>
<!-- 总调度器 -->
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref local="payCronTriggerBean"></ref>
</list>
</property>
</bean>
分享到:
相关推荐
spring整合quartz定时任务调度..........
Spring 定时器 任务调度 怎么在项目中写定时任务 怎么配置一些环境
Spring中集成的一个定时任务调度器,以备以后使用
spring动态调度任务,根据用户选择时间进行定时执行任务相关文档配置
Spring Quartz 定时调度任务,带中文注解与jar文件,导入项目即可直接运行。
本文档详细介绍了Spring定时任务配置的两种方式。一种方式是使用Spring提供的 MethodInvokingJobDetailFactoryBean 代理类,Quartz通过该代理类直接调度任务类的某个函数,另外一种方式是任务类继承并实现Quartz接口...
1、spring 定时任务demo 2、定时任务(xxl-job)(XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。) 3、...
基于zookeeper+spring task的分布式任务调度组件,非常小巧,无需任何修改就可以使spring task具备分布式特性,确保所有任务在集群中不重复,不遗漏的执行。 5.Quartz 官方地址:...
Spring的任务调度@Scheduled注解——task:scheduler和task:executor的解析,做了一些测试说明了各个参数的作用
用到了spring的任务调度 ,动手写了个demo
1.使用Quartz,这是一个功能比较强大的的调度器,可以让你的程序在指定时间执行,也可以按照某一个频度执行. 2.Spring3.0以后自带的task,可以将它看成一个轻量级的Quartz,而且使用起来比Quartz简单许多.
Spring Task+Zookeeper分布式定时任务调度组件-Taroco-Scheduler
Quartz--JAVA定时任务\Java应用:Java调度任务和Spring Quartz (1)
NULL 博文链接:https://zheng12tian.iteye.com/blog/762585
通过本文,读者将能够了解如何在Spring Boot应用中轻松创建和管理定时任务。 # @Scheduled注解简介 在Spring框架中,@Scheduled注解用于标记一个方法,使其能够在固定的时间间隔内自动执行。这个注解主要基于Java的...
spring的三种任务调度实现方式lib
NULL 博文链接:https://topbox163.iteye.com/blog/1095184
NULL 博文链接:https://medbricom.iteye.com/blog/1782765
NULL 博文链接:https://lh-kevin.iteye.com/blog/1673642
(a)首先这里我们需要重新认识一个类ThreadPoolTaskScheduler:线程池任务调度类,能够开启线程池进行任务调度。 (b)ThreadPoolTaskScheduler.schedule()方法会创建一个定时计划ScheduledFuture,在这个方法需要...