1.导入jar包

2.创建entity、

package cn.happy.entity;

public class Plan {
//时间
private String date;
//任务
private String task; public Plan() { } public Plan(String date, String task) {
this.date = date;
this.task = task;
} @Override
public String toString() {
return "Plan [date=" + date + ", task=" + task + "]";
} public String getDate() {
return date;
} public void setDate(String date) {
this.date = date;
} public String getTask() {
return task;
} public void setTask(String task) {
this.task = task;
}
}

3、创建service

package cn.happy.service;

import java.util.ArrayList;
import java.util.List; import cn.happy.entity.Plan; public class RemindService { public void print(String name){
List<Plan> list = getPlan(name);
System.out.println(name+"的提醒信息\n");
for (Plan plan : list) {
System.out.println(plan);
}
}
public void printPlan(String userName){
List<Plan> plansForToday = getPlansForToday(userName);
System.out.print(userName + "的提醒信息:\n");
for(Plan plan:plansForToday){
System.out.print(plan +"\n");
}
} public List<Plan> getPlansForToday(String userName){
//模拟数据库查询,仅为说明问题
List<Plan> list = new ArrayList<Plan>();
list.add(new Plan("2003-8-9 9:00","研讨会 | 地点:会议室C01"));
list.add(new Plan("2003-8-9 14:00","汇报 | 地点:总裁办公室"));
return list;
} public List<Plan> getPlan(String name){
List<Plan> list = new ArrayList<Plan>();
list.add(new Plan("2016年12月18日10:59", "研讨会"));
list.add(new Plan("2016-12-18 11:01","汇报"));
return list;
}
}

4、创建quartz

package cn.happy.quartz;

import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException; import cn.happy.service.RemindService;
/**
* 工作调度类 quartz 类 需要实现 job接口
* @author SLEEP
*
*/
public class RemindJob implements Job {
//注入service对象
RemindService service =new RemindService();
@Override
public void execute(JobExecutionContext arg0) throws JobExecutionException {
service.printPlan("见见");
} }

5.创建测试类(关键)

package cn.happy.test;

import java.util.Date;

import org.quartz.JobBuilder;
import org.quartz.JobDetail;
import org.quartz.Scheduler;
import org.quartz.SchedulerException;
import org.quartz.SchedulerFactory;
import org.quartz.SimpleScheduleBuilder;
import org.quartz.Trigger;
import org.quartz.TriggerBuilder;
import org.quartz.impl.StdSchedulerFactory; import cn.happy.quartz.RemindJob;
/**
* 测试类
* 使用quartz类
* @author SLEEP
*
*/
public class Test { public void doRemind() throws SchedulerException, InterruptedException { //创建一个任务
JobDetail job= JobBuilder.newJob(RemindJob.class) //
.withIdentity("job1", "group1")
.build();
//创建一个触发器
Trigger trigger = TriggerBuilder.newTrigger()
.withIdentity("myTrigger", "myTriggerGroup")
.withSchedule(SimpleScheduleBuilder.simpleSchedule()
.withIntervalInSeconds(5)
.repeatForever())
.startAt(new Date(System.currentTimeMillis() + 1000))
.build();
//创建调度工厂
SchedulerFactory stdSchedulerFactory = new StdSchedulerFactory();
//创建一个调度者
Scheduler scheduler = stdSchedulerFactory.getScheduler();
//注册并进行调度
scheduler.scheduleJob(job,trigger);
//启动调度
scheduler.start();
//创建调度者工厂
SchedulerFactory sfc = new StdSchedulerFactory();
//创建一个调度者
Scheduler sched = sfc.getScheduler();
//注册并进行调度
sched.scheduleJob(job, trigger);
//启动调度
sched.start();
/*//sleep10s
Thread.sleep(10000);
//关闭调度
sched.shutdown();*/
} /**
*
*/
public static void main(String[] args) {
try{
Test testJob = new Test();
testJob.doRemind();
}catch(Exception e){
e.printStackTrace();
}
}
}

scheduletask任务调度的更多相关文章

  1. scheduletask任务调度(2间隔时间)

    Trigger trigger = TriggerBuilder.newTrigger() .withIdentity("myTrigger", "myTriggerGr ...

  2. springBoot集成 quartz动态定时任务

    项目中需要用到定时任务,考虑了下java方面定时任务无非就三种: 用Java自带的timer类.稍微看了一下,可以实现大部分的指定频率的任务的调度(timer.schedule()),也可以实现关闭和 ...

  3. Spring任务调度

    任务调度是大多数应用系统的常见需求之一,拿论坛来说:每个半个小时生成精华文章的RSS文件,每天凌晨统计论坛用户的积分排名,每隔30分钟执行对锁定过期的用户进行解锁.以上都是以时间为关注点的调度,事实上 ...

  4. SpringBoot2 task scheduler 定时任务调度器四种方式

    github:https://github.com/chenyingjun/springboot2-task 使用@EnableScheduling方式 @Component @Configurabl ...

  5. java实现任务调度

    最近的一个小项目是做一个简单的数据仓库,需要将其他数据库的数据抽取出来,并通过而出抽取成页面需要的数据,以空间换时间的方式,让后端报表查询更快. 因为在抽取的过程中,有一定的先后顺序,需要做一个任务调 ...

  6. .net 分布式架构之任务调度平台

    开源地址:http://git.oschina.net/chejiangyi/Dyd.BaseService.TaskManager .net 任务调度平台 用于.net dll,exe的任务的挂载, ...

  7. 免费开源的DotNet任务调度组件Quartz.NET(.NET组件介绍之五)

    很多的软件项目中都会使用到定时任务.定时轮询数据库同步,定时邮件通知等功能..NET Framework具有“内置”定时器功能,通过System.Timers.Timer类.在使用Timer类需要面对 ...

  8. Spring Quartz实现任务调度

    任务调度 在企业级应用中,经常会制定一些"计划任务",即在某个时间点做某件事情 核心是以时间为关注点,即在一个特定的时间点,系统执行指定的一个操作 任务调度涉及多线程并发.线程池维 ...

  9. Quartz实现任务调度

    一.任务调度概述 在企业级应用中,经常会制定一些"计划任务",即在某个时间点做某件事情,核心是以时间为关注点,即在一个特定的时间点,系统执行指定的一个操作,任务调度涉及多线程并发. ...

随机推荐

  1. Vertica集群单节点宕机恢复方法

    Vertica集群单节点宕机恢复方法 第一种方法: 直接通过admintools -> 5 Restart Vertica on Host 第二种方法: 若第一种方法无法恢复,则清空宕机节点的c ...

  2. 从零开始学 Java - Spring 集成 Memcached 缓存配置(二)

    Memcached 客户端选择 上一篇文章 从零开始学 Java - Spring 集成 Memcached 缓存配置(一)中我们讲到这篇要谈客户端的选择,在 Java 中一般常用的有三个: Memc ...

  3. MacOS平台下@rpath在动态链接库中的应用

    一.背景介绍 公司开发的一个底层库被用在了Mac平台的多个产品中.在开发这个底层库的初期,对于Mac OSX下的Install name 并没有过多的了解.对于XCode中的install name项 ...

  4. 用JWT来保护我们的ASP.NET Core Web API

    在上一篇博客中,自己动手写了一个Middleware来处理API的授权验证,现在就采用另外一种方式来处理这个授权验证的问题,毕竟现在也 有不少开源的东西可以用,今天用的是JWT. 什么是JWT呢?JW ...

  5. [dedecms]后台不显示验证码

    原因:某个加载文件的开始处有一个标点,去掉就可显示 // 文件地址 /include/vdimgck.php @session_start(); $_SESSION['securimage_code_ ...

  6. 【转】OpenCV 移植学习--EMCV

    在Opencv论坛有好些这方面的帖子,主要看了一下几个牛人的帖子,比如论坛管理员于博士Shiqi Yu:(EMCV:可在DSP上运行的OpenCV)http://www.opencv.org.cn/f ...

  7. 在centos 服务器上安装phalcon框架 undefined symbol: php_pdo_get_dbh_ce

    去git 下载对应版本的框架 命令行: sudo yum install php-devel pcre-devel gcc make 然后使用GIT clone到服务器上,然后 git clone g ...

  8. .NET RESTful Web Services入门

    很早之前看到过RESTful Web Services,并未在意,也没找相关资料进行学习.今天偶尔有一机会,就找了点资料进行研究,发现RESTful真是“简约而不简单”.下面用示例来说明: 1 项目结 ...

  9. 伙伴们休息啦canvas绘图夜空小屋

    HTML5 canvas绘图夜空小屋 伙伴们园友们,夜深了,休息啦,好人好梦... 查看效果:http://hovertree.com/texiao/html5/28/ 效果图如下: 代码如下: &l ...

  10. CSS布局 -- 圣杯布局 & 双飞翼布局

    按照我的理解,其实圣杯布局跟双飞翼布局的实现,目的都是左右两栏固定宽度,中间部分自适应. 但在这里实现起来还是有一些区别的 [圣杯布局] 在这里,实现了左(200px) 右(220px) 宽度固定,中 ...