spring-boot - 仅在星期一运行的 Cron 表达式
问题描述
我正在使用石英表达式创建一个触发器,该触发器应该只在星期一执行,day of month
而不应该是1
.
我已经知道该0 5 0 2-31 * MON
表达式不起作用,因为Specifying both a day-of-week and a day-of-month parameter is not implemented
. 这个问题有什么解决方法吗?我怎样才能做到这一点?
总而言之,如果一个月的第一天是星期一,则不应执行上述表达式,但对于该月的其他星期一,则应执行。
解决方案
由于未实现对指定星期几和月份参数的支持,您可以尝试以下操作:
@Scheduled(cron = "0 5 0 ? * MON")
private void doTask(){
if(LocalDate.now().getDayOfMonth() != 1){
//your code here
}
}
您还可以在此处检查并生成用于石英的玉米。
推荐阅读
- python - python - 如何根据Python中4个键中的2个键获取唯一的字典列表?
- arrays - 如何从 Kotlin 的列表中删除指定位置的元素?
- configuration - 如何使用 string-keyed-jdbc-store 缓存设置查询超时
- javascript - 在多个平台上处理不同的日期格式
- python - python中不区分大小写的排序
- javascript - 需要什么 JavaScript 才能将选项添加到 TOP 的
- hash - php artisan make:livewire 示例错误 laravel 8
- c# - 使用 IN 运算符并在 LINQ C# 中获取不同的值
- maven - Maven:降低处理恶意 pom.xml 时泄露我的凭据的风险
- c# - SQL Server 和 SQL 注入