java定时任务实现

定时任务是指开发者在特定的时间间隔内或在特定时间执行代码,适合处理需要定期执行的任务或者需要在未来某个时间点执行的任务。

应用场景(部分)
定时任务调度 :例如每天凌晨执行数据备份、定时数据同步等操作。
周期性任务 :例如每隔一段时间执行一次缓存清理、日志归档等操作。
定时提醒或通知 :例如定时发送邮件、短信提醒等。
定时任务监控:例如定时检查系统状态、定时报告生成等。

代码实现:

java 复制代码
@SpringBootApplication
@EnableScheduling //开启定时任务
public class AccountApplication {
    public static void main(String[] args) {
        ApplicationContext context = SpringApplication.run(AccountApplication.class, args);
    }
}

@Component
public class TaskUtil {


    /*** 每日凌晨执行 23时59分59秒
     * @Author FM_南风
     * @Date 2024/6/28 10:26
     **/
    //cron 秒 分 时 日 月 星期 年
    @Scheduled(cron = "59 59 23 * * 1-7")
    public void doEveryDayTask(){
        //执行逻辑
    }

    //每5000毫秒执行一次
    @Scheduled(fixedRate = 5000)
    public void do(){
        //执行逻辑
    }
}

cron特殊字符:

*字符: 表示所有值。

?字符: 表示不确定的一个值,即任意一个合法值, 如每月的7号触发一个操作则设置 0 0 0 7 * ?。

-字符: 表示连续的范围,如在小时中定义10-12,表示在10,11,12点每小时触发一次。

/字符: 表示指定一个值的增加幅度。n/m表示从n开始,每次m过后执行, 如在 秒上定义1/5 表示从 第 1 秒开始 每 5 秒执行一次。

相关推荐
2501_9336707921 分钟前
经营财务岗技能栈拆解:Excel、SQL、BI、预算分析怎么准备
开发语言
小蒜学长22 分钟前
基于RFID技术的仓储管理系统设计(代码+数据库+LW)
java·数据库·spring boot·后端·rfid技术·仓储管理
梦影_29 分钟前
Langchain简单快速上手教程(五)——聊天模型之流式传输
java·数据库·人工智能·python·langchain
数据狐(Datafox)44 分钟前
1688商品列表API接口解析(附 JSON 样例)
java·开发语言·数据库·爬虫·json
xcl09251 小时前
健身场馆无人自动化系统:从架构设计到落地实践
java·spring boot
EatFan1 小时前
一个二维码背后的系统设计:批次生成、绑定、扫码与数据统计怎么做?
java·后端·微信小程序·二维码·qrcode
白远山1 小时前
自助健身小程序源码:架构拆解、核心链路与本地部署实战
java·架构·uni-app·需求分析
小灰灰搞电子1 小时前
Rust Once 、OnceLock、LazyLock 一次性初始化详解
开发语言·后端·rust
Lyyaoo.1 小时前
【动态规划】【待更新】
java·数据结构·算法
hqyjzsb1 小时前
规划工商管理大学成长:搭建四层能力体系,重视高阶的 AI 能力建设
开发语言·人工智能·python·microsoft·职场和发展·数据挖掘·业界资讯