美文网首页
quartz示例

quartz示例

作者: 四格台 | 来源:发表于2017-07-08 00:22 被阅读29次

    一 quartz使用

    quartz做为java语音库一个优秀的定时任务,既支持单机服务,又支持分布式集群服务。

    本文只记录quartz的使用,后续会增加quartz执行原理

    1.定义执行类

    
    public class QuartzJobTest{
    
        @PostConstruct
    
        public voidinitJob() {
    
            System.out.println("Quartz postconstruct");
    
        }
    
    public QuartzJobTest() {
    
    }
    
        public void  execute() {
    
            System.out.println("Quartz execute");
    
        }
    
    }
    

    2.集成spring

    <!--agent 任务类-->
        <bean id="quartzJobTest"
              class="com.test.QuartzJobTest">
    
        </bean>
    
        <!--agent任务描述-->
        <bean id="quartzJobDetail"
              class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
            <property name="targetObject" ref="quartzJobTest"/>
            <property name="targetMethod" value="execute"/>
        </bean>
    
        <!--触发器-->
        <bean id="cronTrigger"
              class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
            <property name="jobDetail" ref="quartzJobDetail"/>
            <!--每两分钟执行一次-->
            <property name="cronExpression" value="* 0/2 * * * ?"/>
        </bean>
    
        <!--总管理容器-->
        <bean id="scheduler"
              class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
            <property name="triggers">
                <list>
                    <ref bean="cronTrigger"/>
                </list>
            </property>
        </bean>
    

    quartzJob只会加载一次,可以从Job的PostConstruct执行结果来确认,只有一次

    相关文章

      网友评论

          本文标题:quartz示例

          本文链接:https://www.haomeiwen.com/subject/ychdhxtx.html