在线编程在线课堂在线测评Anycodes在线编程

编程论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

How to use bs4??
本帖最后由 carry0987 于
Double Queue 问题描述 : The new founded Balkan Investment Group Bank (
John 问题描述 : Little John is playing very funny game
linux-command Linux命令大全搜索工具,内容包含Linux命令
Coati 是一款跨平台的代码查看工具,适用于 C/C++ 和 Java。商业软件。特性:1. 索引
系统可承载海量并发,消息收发确认机制 保障消息必达 系统采用动态智
全平台视频监控,支持安卓苹果以及pcweb,支持海康大华等主流dvr,全部源码以及文档 单聊、群聊、商
如何访问类的私有属性? 下面以 TPathData 为例,
问题:从 XE4 以来,Firemonkey 曲线绘图在移动平台不平滑的问题一直令人诟病,提交到官方的 QC 也是族繁不及备载,官方似乎有意的
操作数据库(RODBC)   odbcConnect(dsn, uid="", p
数据模式:mode函数显示任何对象的模式。常见的单个的
系统可承载海量并发,消息收发确认机制 保障消息必达 系统采用动态智
RabbitMQ与PHP(一) 项
Iease团队扩编预备中,盼望能有Ruby或者java工程师加盟。全职兼职都可以。有爱好的伴侣请与我接洽。 邮件:i
ruby 怎么设置装备摆设GTK2,求教指导下!
#include #include #include #include using namespace std; int main() {
标题如图所示: 有n盏灯,编号1~n。一开端灯都是关着的
成熟的消息收发确认机制,支持万人大群 支持开发自定义的消息sdk接口,扩展性超强 支持单/
成熟的消息收发确认机制,支持万人大群 支持开发自定义的消息sdk接口,扩展性超强 支持单/
1. 注意列表和集合的区别 set 列表表现形式: list_1
Ajax   Ajax即“Asynchronous Javascript And
大师好,我比来在做布谷鸟优
分辨提取A和B图像Harris角点,接下来须要对

[精彩分享] Quartz框架 实现任务调度

[复制链接]
发表于 2016-11-19 20:03:24 | 显示全部楼层 |阅读模式
1.任务
Job:是一个接口,只有一个方法void execute(JobExecutionContext context),开发者实现该接口定义运行任务,JobExecutionContext类提供了调度上下文的各种信息。Job运行时的信息保存在 JobDataMap实例中;
2.触发器
Trigger:是一个类,描述触发Job执行的时间触发规则。主要有SimpleTrigger和 CronTrigger这两个子类。当仅需触发一次或者以固定时间间隔周期执行,SimpleTrigger是最适合的选择;而CronTrigger则 可以通过Cron表达式定义出各种复杂时间规则的调度方案:如每早晨9:00执行,周一、周三、周五下午5:00执行等;
3.调度器
JobDetail:Quartz在每次执行Job时,都重新创建一个Job实例,所以它不直接接受一个Job的实例,相反它接收一个Job实现类,以便运行时通过newInstance()的反射机制实例化Job。因此需要通过一个类来描述Job的实现类及其它相关的静态信息,如Job名字、描述、关联监听器等信息,JobDetail承担了这一角色。
创建一个Quartz工作
1.计划实体类
  1. /**
  2. *
  3. *计划实体类
  4. */
  5. public class Plan {
  6.     private String date;
  7.     private String task;
  8.     public Plan(String date, String task) {
  9.         
  10.         this.date = date;
  11.         this.task = task;
  12.     }
  13.     public Plan() {
  14.         
  15.     }
  16.     @Override
  17.     public String toString() {
  18.         return "Plan [date=" + date + ", task=" + task + "]";
  19.     }
  20.     public String getDate() {
  21.         return date;
  22.     }
  23.     public void setDate(String date) {
  24.         this.date = date;
  25.     }
  26.     public String getTask() {
  27.         return task;
  28.     }
  29.     public void setTask(String task) {
  30.         this.task = task;
  31.     }
  32. }
复制代码
2.提醒服务类
  1. /**
  2. *
  3. * @提醒服务类
  4. *
  5. */
  6. public class RemindService {
  7.     //数据查询
  8.     public List<Plan> getPlansForToday(){
  9.         List<Plan> list=new ArrayList<Plan>();
  10.         Plan p1=new Plan("2016-11-3","呵呵");
  11.         Plan p2=new Plan("2016-11-4","嘿嘿");
  12.         list.add(p1);
  13.         list.add(p2);
  14.         return list;
  15.         
  16.     }
  17.     //提醒服务类
  18.     public void ouputPlan(){
  19.         List<Plan> forToday = getPlansForToday();
  20.         for (Plan plan : forToday) {
  21.             System.out.println("计划时间"+plan.getDate()+"计划内容"+plan.getTask());
  22.         }
  23.     }
  24. }
复制代码
3.提醒任务类
  1. /**
  2. *
  3. * @提醒任务类
  4. *
  5. */
  6. public class RemindJob implements Job {
  7.     private RemindService service=new RemindService();
  8.    
  9.     public void execute(JobExecutionContext arg0) throws JobExecutionException {
  10.         service.getPlansForToday();
  11.         
  12.     }
  13.     public RemindService getService() {
  14.         return service;
  15.     }
  16.     public void setService(RemindService service) {
  17.         this.service = service;
  18.     }
  19. }
复制代码
4.调度定时器任务
  1. public class TestJob {
  2.     public static void doRemind() throws SchedulerException, InterruptedException{
  3.         //创建一个任务
  4.         JobDetail job =JobBuilder.newJob(RemindJob.class).withIdentity("job1", "group1").build();
  5.         //创建一个触发器
  6.         
  7.         /*Trigger trigger = TriggerBuilder.newTrigger()
  8.                 .withIdentity(TriggerKey.triggerKey("myTrigger", "myTriggerGroup"))
  9.                 .withSchedule(SimpleScheduleBuilder.simpleSchedule()
  10.                     .withIntervalInMilliseconds(2))
  11.                 .startAt(new Date(System.currentTimeMillis()+2000))
  12.                 .build();*/
  13.         Trigger trigger=TriggerBuilder.newTrigger().withIdentity("myTrigger", "group1").
  14.                 withSchedule(CronScheduleBuilder.cronSchedule("0 34 16 ? * 5#1 2016")).build();
  15.         SchedulerFactory s=new StdSchedulerFactory();
  16.         Scheduler scheduler = s.getScheduler();
  17.         //注册并进行调度
  18.         scheduler.scheduleJob(job,trigger);
  19.         //启动调度
  20.         scheduler.start();
  21.         //睡眠10s
  22.         //Thread.sleep(10000);
  23.         //关闭调度
  24.         //scheduler.shutdown();
  25.     }
  26.         public static void main(String[] args) throws SchedulerException, InterruptedException {
  27.             doRemind();
  28.         }
  29. }
复制代码
Cron表达式

Quartz框架 实现任务调度

Quartz框架   实现任务调度

Quartz框架 实现任务调度

Quartz框架   实现任务调度



上一篇:按位或运算的一种应用方式
下一篇:setText("")和setText(null)为什么肃清不了文本,可是把setText(“s”)能使文本框置为 ...
在线编程(http://www.anycodes.cn)&编程论坛(http://www.52exe.cn)感谢您的支持!
回复

使用道具 举报

发表于 2017-7-21 22:15:08 | 显示全部楼层
楼上是脑残
在线编程(http://www.anycodes.cn)&编程论坛(http://www.52exe.cn)感谢您的支持!
回复 支持 反对

使用道具 举报

发表于 2017-7-28 23:59:06 | 显示全部楼层
看的不是很懂
在线编程(http://www.anycodes.cn)&编程论坛(http://www.52exe.cn)感谢您的支持!
回复 支持 反对

使用道具 举报

发表于 2017-8-15 15:33:30 | 显示全部楼层
AAAAAAAAAAAAAAAAAAAAAAAA
在线编程(http://www.anycodes.cn)&编程论坛(http://www.52exe.cn)感谢您的支持!
回复 支持 反对

使用道具 举报

发表于 2017-9-9 04:40:21 | 显示全部楼层
演出结束,领导上台拉住漂亮的蒙古族女演员的手嘘寒问暖不放手,还一个劲地问叫什么名字?女演员激动地说:玛勒格碧
在线编程(http://www.anycodes.cn)&编程论坛(http://www.52exe.cn)感谢您的支持!
回复 支持 反对

使用道具 举报

发表于 2017-9-18 01:46:42 | 显示全部楼层
水水水水
在线编程(http://www.anycodes.cn)&编程论坛(http://www.52exe.cn)感谢您的支持!
回复 支持 反对

使用道具 举报

发表于 2017-9-27 07:20:29 | 显示全部楼层
标准的十五字有木有,没有
在线编程(http://www.anycodes.cn)&编程论坛(http://www.52exe.cn)感谢您的支持!
回复 支持 反对

使用道具 举报

发表于 2017-9-27 11:27:50 | 显示全部楼层
呵呵
在线编程(http://www.anycodes.cn)&编程论坛(http://www.52exe.cn)感谢您的支持!
回复 支持 反对

使用道具 举报

发表于 2017-10-17 10:24:00 | 显示全部楼层
今天有什么新闻么
在线编程(http://www.anycodes.cn)&编程论坛(http://www.52exe.cn)感谢您的支持!
回复 支持 反对

使用道具 举报

发表于 2017-10-31 13:35:24 | 显示全部楼层
看到你们回复,我不说话
在线编程(http://www.anycodes.cn)&编程论坛(http://www.52exe.cn)感谢您的支持!
回复 支持 反对

使用道具 举报

发布主题 上个主题 下个主题 快速回复 返回列表 官方QQ群
在线客服
客 服 中 心
群 机 器 人
网站二维码
收 起 客 服

QQ|Archiver|手机版|小黑屋|Anycodes ( ICP14002806Anycodes在线编程

GMT+8, 2018-11-22 01:12 , Processed in 1.853364 second(s), 99 queries .

Powered by Anycodes

© 2001-2013 吉林市群龙科技有限公司 Inc.

快速回复 返回顶部 返回列表