Java定时任务调度工具


tags: 定时任务调度, title: Java定时任务调度工具


为什么要使用定时任务调度工具?

在最近的开发中,想开发一个“个人备忘录”的功能,实际上就是用户在指定某个时间点后,就在那个时间点发送邮件提醒用户去做xxx事。

既然是这样的一个功能,我就想到了定时任务调度...

之前跟着视频做的项目也用到了定时任务调度工具:Quartz。当时记录的博文在这:zhongfucheng.bitcron.com/post/javaee…

显然的,只是简单的使用了一下Quartz,并不能完成我所说的功能。后来我又记得在慕课网上有相关的Quartz教程。

于是我就去学习了一番,视频教程:www.imooc.com/learn/841www.imooc.com/learn/846

学习记录

把慕课网的视频也都看完了,现在做一个学习的记录....

Timer

首先,得知道:为什么有JDK的Timer定时任务调度工具,还需要用到Quartz??

  • Timer仅有一个线程来进行调度我们的任务,对于并发性而言,它是无法处理的!
  • 如果使用Timer时抛出了异常,那么我们设置的任务将全部作废

当然了, 如果仅仅是简单使用任务调度工具、并没有什么并发性的话,那么Timer是可以完成任务的。

在视频中还介绍了Timer的一些API说明:

  • schedule和scheduleAtFirstRate的对比:

可以总结出:scheduleAtFirstRate是有一定的并发性而言的(相对来说)

Quartz

Quartz的三大要素:

  • 任务
  • 触发器
  • 调度器

针对三大要素相关API说明:

任务:需要做怎么样的事情

  • 可以通过Map来传递所需要的参数!

Trigger:该任务何时被触发

  • 简单的触发器
  • 复杂的触发器

Schedule:

如果对Cron表达式不是特别清楚,还可以在网上生成!

Quartz与Sprping整合:

Spirng环境下使用Quartz时读取的配置文件:

源码:img.mukewang.com/down/5950ca…

如果您觉得这篇文章帮助到了您,可以给作者一点鼓励

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值