quartz中overWriteExistingJobs怎样设置
时间: 2024-01-13 15:02:16 浏览: 168
在 Quartz 中,可以使用 `JobDetailFactoryBean` 和 `CronTriggerFactoryBean` 来创建作业和触发器,并通过 `SchedulerFactoryBean` 将它们添加到调度程序中。
要设置 `overWriteExistingJobs` 属性,可以在 `SchedulerFactoryBean` 中设置它。`overWriteExistingJobs` 属性用于指定是否覆盖现有的作业和触发器。如果设置为 true,则新的作业和触发器将覆盖现有的作业和触发器。
以下是在 Spring 中设置 `overWriteExistingJobs` 属性的示例:
```xml
<bean id="jobDetail" class="org.springframework.scheduling.quartz.JobDetailFactoryBean">
<property name="jobClass" value="com.example.MyJob"/>
<property name="jobDataAsMap">
<map>
<entry key="param1" value="value1"/>
<entry key="param2" value="value2"/>
</map>
</property>
</bean>
<bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<property name="jobDetail" ref="jobDetail"/>
<property name="cronExpression" value="0 0/5 * * * ?"/>
</bean>
<bean id="schedulerFactory" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="cronTrigger"/>
</list>
</property>
<property name="overwriteExistingJobs" value="true"/>
</bean>
```
在上面的示例中,`SchedulerFactoryBean` 的 `overwriteExistingJobs` 属性设置为 `true`,以便覆盖现有的作业和触发器。
阅读全文