quartz学习三--Spring集成

一、基础
    1、依赖 jar
       quartz-1.8.5.jar
       spring-context-3.0.5.RELEASE.jar
       spring-context-support-3.0.5.RELEASE.jar
    
    2、Spring 与 Quartz
       Spring-3.1 整合必须使用 Quartz-1.*            --->        org.quartz.CronTrigger 在quartz 1.8 中是类,在quartz 2中是接口。(由org.springframework.scheduling.quartz.CronTriggerBean 继承/实现)

       Spring-3.1 及以后 支持  Quartz-2.*

二、集成Spring
    1、Job -- 调度任务
       (1)、Job 标识
            a、方式一:
               作业类需要继承自特定的作业类基类org.springframework.scheduling.quartz.QuartzJobBean;

            b、方式二:
               普通java类

       (2)、配置
            a、方式一:
               <bean id="arrange" class="org.springframework.scheduling.quartz.JobDetailBean">
              <!-- 指定了目标类,每次调试都会建立一个新的实例 -->
           <property name="jobClass" value="game.job.OrderJob"></property>
           <!-- 用于向目标类实例的属性注入值 -->
           <property name="jobDataAsMap">
              <map>
            <entry key="">
               <ref bean="" />
            </entry>                
              </map>
           </property>
               </bean>
           
            b、方式二:
               <bean id="SpringQtzJob" class="com.ncs.hj.SpringQtz"/>  
               <bean id="SpringQtzJobMethod" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">  
           <property name="targetObject" ref="SpringQtzJob" />
           <!-- 要执行的方法名称 -->
           <property name="targetMethod" value="execute" />/>
           <!-- false表示job不会并发执行,默认为true-->
           <property name="concurrent" value="false" />
               </bean>  
 
    2、触发器
       (1)、org.springframework.scheduling.quartz.SimpleTriggerBean
            a、作用
           每隔指定时间则触发一次

            b、配置
               <bean id="testTaskTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
           <property name="jobDetail" ref="testTask"></property>
           <!-- 指定调度时间间隔此处为2秒 -->
           <property name="repeatInterval" value="2000"></property>
           <!-- 指定调度执行次数,不指定无穷次 -->
           <property name="repeatCount" value="3"></property>
               </bean>

       (2)、org.springframework.scheduling.quartz.CronTriggerBean
            a、作用
           每到指定时间则触发一次

            b、配置
               <bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
           <property name="jobDetail" ref="arrange"></property>
           <!-- 每天开始时相关调度任务 -->
           <property name="cronExpression" value="0 0 6 * * ? *"></property>
               </bean>

    3、调度器
       (1)、配置
            <bean id="startQuartz" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
        <property name="triggers">
           <list>
            <ref bean="cronTrigger"/>
           </list>
        </property>
            </bean>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值