如何在spring中运行多个schedulers quartz 实例
1个回答
展开全部
<!-- 使用pojo来做job,指定pojo和method --
<bean id="jobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"
<property name="targetObject" ref="pojoObject"/
<property name="targetMethod" value="execute"/</bean2、定义一个触发时间
<bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean"
<property name="jobDetail" ref="jobDetail"/
<!--朝九晚五工作时间内每半小时执行一次--
<property name="cronExpression" value="0 0/30 9-17 *,* * ?"/</bean3、定义管理器
<bean name="quartzScheduler"
class="org.springframework.scheduling.quartz.SchedulerFactoryBean"
<property name="triggers"<list<ref bean="cronTrigger"/</list</property</bean一般的应用,只要配置上面这些东东就可以了。
看一下SchedulerFactoryBean的代码,里面一个参数叫做:schedulerName,SchedulerFactoryBean通过 StdSchedulerFactory返回一个具体的Scheduler的。而且每个Scheduler是注册在 SchedulerRepository中的。
SchedulerRepository中的每个Scheduler都是放在一个MAP中的,根据名字作为KEY。
private HashMap schedulers;
这样就比较好办了。
<bean name="quartzScheduler"
class="org.springframework.scheduling.quartz.SchedulerFactoryBean"
<property name="schedulerName"<valuefirst</value</property</bean可以声明多个。并设上不同名字,这样scheduler就分有多个实例,可以分别启动、停止了。
<bean id="jobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"
<property name="targetObject" ref="pojoObject"/
<property name="targetMethod" value="execute"/</bean2、定义一个触发时间
<bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean"
<property name="jobDetail" ref="jobDetail"/
<!--朝九晚五工作时间内每半小时执行一次--
<property name="cronExpression" value="0 0/30 9-17 *,* * ?"/</bean3、定义管理器
<bean name="quartzScheduler"
class="org.springframework.scheduling.quartz.SchedulerFactoryBean"
<property name="triggers"<list<ref bean="cronTrigger"/</list</property</bean一般的应用,只要配置上面这些东东就可以了。
看一下SchedulerFactoryBean的代码,里面一个参数叫做:schedulerName,SchedulerFactoryBean通过 StdSchedulerFactory返回一个具体的Scheduler的。而且每个Scheduler是注册在 SchedulerRepository中的。
SchedulerRepository中的每个Scheduler都是放在一个MAP中的,根据名字作为KEY。
private HashMap schedulers;
这样就比较好办了。
<bean name="quartzScheduler"
class="org.springframework.scheduling.quartz.SchedulerFactoryBean"
<property name="schedulerName"<valuefirst</value</property</bean可以声明多个。并设上不同名字,这样scheduler就分有多个实例,可以分别启动、停止了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询