Spring 之 quartz使用体会

网上资料并不完整。
个人整理使用方法如下所示:
1.  创建工作任务
    <bean id="auctionJobDetail" class="org.springframework.scheduling.quartz.JobDetailBean">
        <property name="jobClass" value="com.marsor.ipapoo.timer.AuctionOverJob" />
        <property name="applicationContextJobDataKey" value="applicationContext"/>
    </bean>

2.  设置工作任务触发机制
    <bean id="simpleTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
        <property name="jobDetail" ref="auctionJobDetail" />
        <property name="startDelay" value="1000" />
        <property name="repeatInterval" value="1000" />
    </bean>

3.  根据以上两项内容创建Spring定时器,并开始执行。(没有这步是不可能运行的)
    <bean id="scheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
        <property name="triggers">
            <list>
                <ref bean="simpleTrigger" />
            </list>
        </property>
    </bean>

需要自己写的内容只有 JobClass所指的继承自org.quartz.Job的工作内容。仅仅实现其中的一个execute方法。当然,以上配置的内容还是要放到Spring的配置文件中的。

如果要实现不同的触发机制,只需要修改trigger就可以,例如可以修改成crontrigger,或者简单增加crontrigger,因为定时器是可以创建多个触发器的。而且可以同时进行,互不影响(在第三步配置多个trigger)。每一个步骤都可以参考其类的生命获取其他参数信息。例如schedulerContextAsMap等等。
posted @ 2011-04-01 10:32  地球火星人  阅读(339)  评论(0编辑  收藏  举报