gpt4 book ai didi

java - Quartzscheduler 在每月的第一个和第三个星期一运行

转载 作者:行者123 更新时间:2023-11-30 02:48:16 25 4
gpt4 key购买 nike

我想在每月的第一个和第三个星期一运行一项作业。我正在使用 CronTriggerBean,尝试使用以下表达式进行配置,但不起作用:

<property name="cronExpression" value="0 0 12 ? * MON#1,3 *" />

<property name="cronExpression" value="0 0 12 ? * MON#1,MON#3 *" />

第一个表达式仅在第一个星期一运行作业,而第二个表达式在第三个星期一运行作业。

有什么方法可以使用 CronTriggerBean 实现此目的吗?我使用的是quartz-1.6.5和XML配置,所以我不认为我可以配置SimpleTriggerBean来做到这一点。

最佳答案

您无法使用单个触发器 bean 来做到这一点。您需要创建 2 个单独的并将它们注册到调度程序:

<bean id="cronTriggerJobFirstMonday"
class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail" ref="YourQuartzJobBean" />
<property name="cronExpression" value="0 0 12 ? * MON#1 *" />
</bean>

<bean id="cronTriggerJobThirdMonday"
class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail" ref="yourQuartzJobBean" />
<property name="cronExpression" value="0 0 12 ? * MON#3 *" />
</bean>

<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="cronTriggerJobFirstMonday" />
<ref bean="cronTriggerJobThirdMonday" />
</list>
</property>
</bean>

关于java - Quartzscheduler 在每月的第一个和第三个星期一运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39510448/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com