crontrigger如何使用quartz的Trigger使得每天指定开始结束时间按间隔运行
crontrigger 时间:2021-07-09 阅读:(
)
应该如何正确使用Quartz
第一步
导入相关的jar包
第二步
创建定时任务
一个定时任务对应一个Job实现类。
例如:
MyJob类为需要定时执行的类 --->
public class MyJob implements Job {
//MyJob类为需要定时执行的类,execute为定时执行的方法。
一个定时任务对应一个Job实现类。
@Override
public void execute(JobExecutionContext arg0) throws JobExecutionException {
//业务逻辑
System.out.println("执行时间:"+new Date());
}
}
第三步
执行都是任务
public static void main(String[] args) throws Exception {
//SchedulerFactory 是一个接口,用于Scheduler的创建和管理
SchedulerFactory factory = new StdSchedulerFactory();
//从工厂里面拿到一个scheduler实例
//计划表(可能翻译的不太贴切),现在我们有了要做的内容,
//与调度程序交互的主要API
/*
* Scheduler的生命期,从SchedulerFactory创建它时开始,
到Scheduler调用shutdown()方法时结束;Scheduler被创建后,
可以增加、删除和列举Job和Trigger,以及执行其它与调度相关的操作
(如暂停Trigger)。
但是,Scheduler只有在调用start()方法后,
才会真正地触发trigger(即执行job)
*/
Scheduler scheduler = factory.getScheduler();
//具体任务.
//用于定义作业的实例
//JobBuilder - 用于定义/构建JobDetail实例,用于定义作业的实例。
JobDetail job = JobBuilder.newJob(MyJob.class).withIdentity("job1", "group1").build();
//Trigger(即触发器) - 定义执行给定作业的计划的组件
//TriggerBuilder - 用于定义/构建触发器实例
CronTrigger trigger = TriggerBuilder.newTrigger().withIdentity("trigger1", "group1")
.withSchedule(CronScheduleBuilder.cronSchedule("0/1 * * * * ?")).build();
scheduler.scheduleJob(job, trigger);
scheduler.start();
}cron表达式 每周一次
首先要了解格式是什么意思:
分钟 小时 日 月 周 〔用户名〕 命令
每周执行一次,应该要确定时间的,比如是每周的星期1的8点
分钟 小时 日 月 周 〔用户名〕 命令
59 7 * * 1 username /var/
解释一下吧,月和日写成*表示不管是哪一个月哪一天,只要周1的7点59分就开始执行,之所以不写8点整,是考虑到系统执行程序是有延迟时间的。
写在cron全局配置文件里面就可以了。
quartz怎么开始和关闭任务
sched.withSchedule(cronSchedule(0 0 17 * * , group1)
;
} catch (SchedulerException e) {
/
CronTrigger trigger = newTrigger()
;
m_logger.info(========WoShopJob == run === Scheduler start Complete;TODO
}
}
public static void main(String[] args) throws Exception {
WoShopJob wj = new WoShopJob().run().withIdentity(trigger1.class)
;
wj;
JobDetail job = newJob(WoShopFTP.build();!)?))
.withIdentity(job1.scheduleJob(job.start(), trigger):
public class WoShopJob {
public void run() {
SchedulerFactory sf = new StdSchedulerFactory();
sched, group1)
.build();
Scheduler sched = null.getScheduler();
try {
sched = sf代码很简单java如何根据用户设定的时间进行定时任务
给你一个案例
1.MyJob02
//首先我们需要定义一个任务类,比如为MyJob02 ,
//该类需要继承Job类,然后添加execute(JobExecutionContext context)方法,在
//这个方法中就是我们具体的任务执行的地方。
//由希望由调度程序执行的组件实现的接口
public class MyJob02 implements Job {
@Override
public void execute(JobExecutionContext context) throws JobExecutionException {
// TODO Auto-generated method stub
// 执行响应的任务.
System.out.println("HelloJob.execute,"+new Date());
}
2.
public static void main(String[] args) throws Exception {
//SchedulerFactory 是一个接口,用于Scheduler的创建和管理
SchedulerFactory factory = new StdSchedulerFactory();
//从工厂里面拿到一个scheduler实例
//计划表(可能翻译的不太贴切),现在我们有了要做的内容,
//与调度程序交互的主要API
/*
* Scheduler的生命期,从SchedulerFactory创建它时开始,
到Scheduler调用shutdown()方法时结束;Scheduler被创建后,
可以增加、删除和列举Job和Trigger,以及执行其它与调度相关的操作
(如暂停Trigger)。
但是,Scheduler只有在调用start()方法后,
才会真正地触发trigger(即执行job)
*/
Scheduler scheduler = factory.getScheduler();
//具体任务.
//用于定义作业的实例
//JobBuilder - 用于定义/构建JobDetail实例,用于定义作业的实例。
JobDetail job = JobBuilder.newJob(MyJob.class).withIdentity("job1", "group1").build();
//Trigger(即触发器) - 定义执行给定作业的计划的组件
//TriggerBuilder - 用于定义/构建触发器实例
CronTrigger trigger = TriggerBuilder.newTrigger().withIdentity("trigger1", "group1")
.withSchedule(CronScheduleBuilder.cronSchedule("0/1 * * * * ?")).build();
scheduler.scheduleJob(job, trigger);
scheduler.start();
}如何使用quartz的Trigger使得每天指定开始结束时间按间隔运行
首先解释下这个CronTrigger时间格式: ,分别对应: 秒>分>小时>日>月>周>年。
0 0/30 * ? * * * 你这个就是表示在每30分钟执行一次,0/30表示的含义是0是起始时间,30是间隔时间。
假如你服务在2013-07-16 10:04:57启动之后,就会在11:00开始执行第一次,之后每30分钟就会自动触发。
如果你这样设置0 5/30 * ? * * * 就会在10:05开始执行第一次,在10:35执行第二次,之后以此类推每30分钟执行一次。
关于cronExpression表达式,这里讲解一下:
字段 允许值 允许的特殊字符
秒 0-59 , - * /
分 0-59 , - * /
小时 0-23 , - * /
日期 1-31 , - * ? / L W C
月份 1-12 或者 JAN-DEC , - * /
星期 1-7 或者 SUN-SAT , - * ? / L C #
年(可选) 留空, 1970-2099 , - * /
表达式意义
"0 0 12 * * ?" 每天中午12点触发
"0 15 10 ? * *" 每天上午10:15触发
"0 15 10 * * ?" 每天上午10:15触发
"0 15 10 * * ? *" 每天上午10:15触发
"0 15 10 * * ? 2005" 2005年的每天上午10:15触发
"0 * 14 * * ?" 在每天下午2点到下午2:59期间的每1分钟触发
...首先解释下这个CronTrigger时间格式: ,分别对应: 秒>分>小时>日>月>周>年。
0 0/30 * ? * * * 你这个就是表示在每30分钟执行一次,0/30表示的含义是0是起始时间,30是间隔时间。
假如你服务在2013-07-16 10:04:57启动之后,就会在11:00开始执行第一次,之后每30分钟就会自动触发。
如果你这样设置0 5/30 * ? * * * 就会在10:05开始执行第一次,在10:35执行第二次,之后以此类推每30分钟执行一次。
关于cronExpression表达式,这里讲解一下:
字段 允许值 允许的特殊字符
秒 0-59 , - * /
分 0-59 , - * /
小时 0-23 , - * /
日期 1-31 , - * ? / L W C
月份 1-12 或者 JAN-DEC , - * /
星期 1-7 或者 SUN-SAT , - * ? / L C #
年(可选) 留空, 1970-2099 , - * /
表达式意义
"0 0 12 * * ?" 每天中午12点触发
"0 15 10 ? * *" 每天上午10:15触发
"0 15 10 * * ?" 每天上午10:15触发
"0 15 10 * * ? *" 每天上午10:15触发
"0 15 10 * * ? 2005" 2005年的每天上午10:15触发
"0 * 14 * * ?" 在每天下午2点到下午2:59期间的每1分钟触发
"0 0/5 14 * * ?" 在每天下午2点到下午2:55期间的每5分钟触发
"0 0/5 14,18 * * ?" 在每天下午2点到2:55期间和下午6点到6:55期间的每5分钟触发
"0 0-5 14 * * ?" 在每天下午2点到下午2:05期间的每1分钟触发
"0 10,44 14 ? 3 WED" 每年三月的星期三的下午2:10和2:44触发
"0 15 10 ? * MON-FRI" 周一至周五的上午10:15触发
"0 15 10 15 * ?" 每月15日上午10:15触发
"0 15 10 L * ?" 每月最后一日的上午10:15触发
"0 15 10 ? * 6L" 每月的最后一个星期五上午10:15触发
"0 15 10 ? * 6L 2002-2005" 2002年至2005年的每月的最后一个星期五上午10:15触发
"0 15 10 ? * 6#3" 每月的第三个星期五上午10:15触发
每天早上6点
0 6 * * *
每两个小时
0 */2 * * *
晚上11点到早上8点之间每两个小时,早上八点
0 23-7/2,8 * * *
每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点
0 11 4 * 1-3
1月1日早上4点
0 4 1 1 *
- crontrigger如何使用quartz的Trigger使得每天指定开始结束时间按间隔运行相关文档
官方网站:点击访问90IDC官方网站优惠码:云八五折优惠劵:90IDCHK85,仅适用于香港CLOUD主机含特惠型。活动方案:年付特惠服务器:CPU均为Intel Xeon两颗,纯CN2永不混线,让您的网站更快一步。香港大浦CN2測速網址: http://194.105.63.191美国三网CN2測速網址: http://154.7.13.95香港购买地址:https://www.90idc.ne...
imidc对日本独立服务器在搞特别促销,原价159美元的机器现在只需要88美元,而且给13个独立IPv4,30Mbps直连带宽,不限制流量。注意,本次促销只有一个链接,有2个不同的优惠码,你用不同的优惠码就对应着不同的配置,价格也不一样。88美元的机器,下单后默认不管就给512G SSD,要指定用HDD那就发工单,如果需要多加一个/28(13个)IPv4,每个月32美元...官方网站:https:...
百纵科技湖南百纵科技有限公司是一家具有ISP ICP 电信增值许可证的正规公司,多年不断转型探索现已颇具规模,公司成立于2009年 通过多年经营积累目前已独具一格,公司主要经营香港服务器,香港站群服务器,美国高防服务器,美国站群服务器,云服务器,母机租用托管!美国CN2云服务器,美国VPS,美国高防云主机,美国独立服务器,美国站群服务器,美国母机。美国原生IP支持大批量订货 合作 适用电商 亚马逊...
crontrigger为你推荐
建站abc怎么取消技术支持: 建站ABCrdlcordless phone是什么意思拓扑关系拓扑关系在GIS中的作用flowplayerswfobject.js这能不能播放音频啊(amr)弹幕网站A站B站网址是什么,国内很出名嗎?有什么网站特点..问卷星登陆请问问卷星怎么设置答题时间?mediasres什么意思基础设施即服务基础设施、 产品服务、 财务和 () 这几个问题是商业模式设计需要去主要解决的。index是什么意思matlab中index是什么意思clamwin比较几款杀毒软件(AVG Avira ClamWin)
成都虚拟主机 域名注册godaddy 景安vps vps优惠码 blackfriday cve-2014-6271 免费主机 cloudstack 国外私服 日志分析软件 天猫双十一秒杀 网通服务器ip 已备案删除域名 php空间推荐 创建邮箱 独享主机 cdn服务 阿里云邮箱怎么注册 512内存 腾讯服务器 更多