spring+quartz,springboot 集成quartz

  spring+quartz,springboot 集成quartz

  

目录

石英与弹簧集成方式:1 .methodinvokejobdetailfactorybean 2。jobdetailbean 3 .两种集成方式的简单说明

 

  

Quartz与Spring集成方式:

1.MethodInvokeJobDetailFactoryBean

 

  2.使用

  下面分别介绍这两种方式。

  

1.MethodInvokeJobDetailFactoryBean

1)创建一个职位类,此类不需要实现任何接口,不需要继承任何类

 

  公共类MyJobTest { public void execute(){ system。出去。println(正在执行石英任务的一个方法。);}}2)配置可扩展置标语言

  !- 第一种集成方式:MethodInvokingJobDetailFactoryBean,并且工作类,直接是持久化类类,与普通类没有区别- !- 定义具体的任务类-bean id= my job class= com。高。石英。myjobtest /!- 定义作业详细信息-bean id=作业详细信息 class=组织。spring框架。日程安排。石英。methodinvokingjobdetailfactorybean!- 目标类-property name= target object ref= my job /!- 目标类中要执行的方法,这个参数是必须的-property name= target method value= execute //bean!- 定义简单触发器触发器-bean id= simpleTaskTrigger class= org。spring框架。日程安排。石英。simpletriggerfactorybean!- 延迟10秒启动,然后每隔3秒执行一次,一共执行8次-属性名=作业详细信息 ref=作业详细信息/属性名=重复计数值= 8 /属性名=开始延迟值= 10000 /属性名=重复间隔值= 3000 //bean!- 定义克朗触发器触发器-bean id= cronTaskTrigger class= org。spring框架。日程安排。石英。crontriggerfactorybean属性名=jobDetail ref=jobDetail /!- 下午4点25分开始,每5秒执行一次-property name= cron expression value= 0/5 25 16?* *//豆子!- 设置调度-bean class= org。spring框架。日程安排。石英。schedulerfactorybean property name= triggers ref bean= cronTaskTrigger //property/bean

  

2.JobDetailBean

1)需要继承石英豆类或者实现职位方法

 

  公共类myjobbeanstest扩展QuartzJobBean { @ Override protected void execute internal(JobExecutionContext上下文)引发JobExecutionException { system。出去。println(测试石英:你好石英);}}2)配置可扩展置标语言

  !- 第二种配置方式,需要继承石英豆-!-工作阶层关联到一个继承自石英豆的类,它实现了石英作业接口。调用到这个作业的时候,它的执行内部将被执行.bean id=作业详细信息 class=组织。spring框架。日程安排。石英。jobdetailfactorybean property name= job class value= com。高。石英。myjobbeanstest /property name=耐久性value= true //bean id=简单触发器 class= org。spring框架。日程安排。石英。simpletriggerfactorybean property name= job detail /property name= start delay value= 3000 /property name= repeatInterval * *//bean!- 总管理类,如果lazy-init=false 那么容器启动就会指定调度程序-bean id= start quartz lazy-init= false auto wire= no class= org。spring框架。日程安排。石英。schedulerfactorybean!- 管理trigger-property name= triggers list ref bean= cron trigger //list/property/bean

  

3.两种集成方式的简单说明

1)使用MethodInvokeJobDetailFactoryBean则需要指定目标对象(任务实例)和目标方法(实例中要执行的方法)

 

  2)使用石英豆,需要继承。

  前者优点是无侵入,业务逻辑简单,一目了然,缺点是无法持久化。

  从我的经验来看,我推荐第二种的一个重要原因是,当相关服务被注入到调度任务中时,后者可以被直接注入,而前者需要被调度器替换和修改。

  以上是石英和弹簧两种集成方法的详细例子。更多关于石英和弹簧的集成方法,请关注风行IT的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: