gpt4 book ai didi

java - 每月 25 日触发的 Cron 表达式

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:07:30 27 4
gpt4 key购买 nike

如何写cron表达式在每月25号早上9点触发一个函数?

当我执行这段代码时,

import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service;
@Service
public class PayrollSchedulerImpl implements PayrollScheduler{

@Scheduled(cron="0 9 25 1 * ?")
public void calculateSalaryScheduled()
{
calculateSalary();
}

public void calculateSalary()
{
/* */
}
}

我得到了错误,

java.lang.StackOverflowError
sun.util.calendar.ZoneInfo.getOffsets(Unknown Source)
sun.util.calendar.ZoneInfo.getOffsets(Unknown Source)
java.util.GregorianCalendar.computeFields(Unknown Source)
java.util.GregorianCalendar.computeTime(Unknown Source)
java.util.Calendar.updateTime(Unknown Source)
java.util.Calendar.complete(Unknown Source)
java.util.Calendar.get(Unknown Source)
org.springframework.scheduling.support.CronSequenceGenerator.doNext(CronSequenceGenerator.java:130)

最佳答案

@Scheduled(cron="0 9 25 1 * ?")

这只是在 1 月 1 日,时间无效,您需要这样:

@Scheduled(cron="0 0 9 25 * ?")

引用: CronSequenceGenerator

关于java - 每月 25 日触发的 Cron 表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6081185/

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