quartz---的一个简单例子
quartz---的一个简单例子
首先建立一个maven项目。jar工程即可。(提示:我前面有如何建立一个maven工程的总结以及maven环境的配置。)
1.建立好后点击到app中运行,-->右键-->run As-->java application,
如果控制台打印出来Hello World! 代表maven工程建立成功!!!
2.在pom文件中导入quartz的jar。
-->可以打开http://mvnrepository.com/ -->搜索quartz -->复制quartz的坐标。 用最新的jar
导入jar:
建一个类:
- package com.imooc.demo.helloQuartz;
- import java.text.SimpleDateFormat;
- import java.util.Date;
- import org.quartz.Job;
- import org.quartz.JobExecutionContext;
- import org.quartz.JobExecutionException;
- public class HelloJob implements Job{
- @Override
- public void execute(JobExecutionContext arg0) throws JobExecutionException {
- //打印当前执行的时间,格式为2017-05-06 00:00:00
- Date date=new Date();
- SimpleDateFormat sf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- System.out.println("Current Exec Time Is:"+sf.format(date));
- //编写具体业务逻辑
- System.out.println("------------------");
- System.out.println("Hello world-");
- }
- }
该类实现了Job类,并需要从写他仅有的一个方法execute
写一个测试类:
- package com.imooc.demo.helloQuartz;
- import java.text.SimpleDateFormat;
- 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;
- public class HelloScheduler {
- public static void main(String[] args) throws SchedulerException {
- // 创建一个jobDatail实例,将该实力与helloJob绑定
- JobDetail detail = JobBuilder.newJob(HelloJob.class).withIdentity("myJob").build();
- System.out.println("JobDetail name:" + detail.getKey().getName());
- System.out.println("JobDetail group:" + detail.getKey().getGroup());
- System.out.println("JobDetail jobClass:" + detail.getKey().getClass());
- // 创建一个Trigger实例,定义该job立即执行,并且在每隔2秒重复执行
- Trigger trigger = TriggerBuilder.newTrigger().withIdentity("myTrigger", "group1").startNow()
- .withSchedule(SimpleScheduleBuilder.simpleSchedule().withIntervalInSeconds(2).repeatForever()).build();
- // 创建Scheduler实例
- SchedulerFactory factory = new StdSchedulerFactory();
- Scheduler scheduler = factory.getScheduler();
- scheduler.start();
- Date date = new Date();
- SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- System.out.println("Current Exec Time Is:" + sf.format(date)+"-----");
- // 把jobDetail和Trigger与scheuler绑定在一起
- scheduler.scheduleJob(detail, trigger);
- }
- }
-->右键-->run As-->java application,
此时 每隔2秒打印一次当前时间和Hello World! 然后就正确了
第一个quartz项目:
使用了Job,jobDetail以及他们的属性:name,class,group。
代码说明了一切,这里我就不啰嗦了。
quartz---的一个简单例子的更多相关文章
- 一个简单例子:贫血模型or领域模型
转:一个简单例子:贫血模型or领域模型 贫血模型 我们首先用贫血模型来实现.所谓贫血模型就是模型对象之间存在完整的关联(可能存在多余的关联),但是对象除了get和set方外外几乎就没有其它的方法,整个 ...
- (转)Java中使用正则表达式的一个简单例子及常用正则分享
转自:http://www.jb51.net/article/67724.htm 这篇文章主要介绍了Java中使用正则表达式的一个简单例子及常用正则分享,本文用一个验证Email的例子讲解JAVA中如 ...
- C语言多线程的一个简单例子
多线程的一个简单例子: #include <stdio.h> #include <stdlib.h> #include <string.h> #include &l ...
- 用socket.io实现websocket的一个简单例子
socket.io 是基于 webSocket 构建的跨浏览器的实时应用. 逛博客发现几个比较好的 一.用socket.io实现websocket的一个简单例子 http://biyeah.iteye ...
- 企业级任务调度框架Quartz(3) 一个简单的Quartz 例子
1. 一个简单的Quartz 工程 本示例应用比起众所周知的 System.out.println("Hello world from Quartz") 来还是要有趣些.当 ...
- 词法分析程序 LEX和VC6整合使用的一个简单例子
词法分析的理论知识不少,包括了正规式.正规文法.它们之间的转换以及确定的有穷自动机和不确定的有穷自动机等等... 要自己写一个词法分析器也不会很难,只要给出了最简的有穷自动机,就能很方便实现了,用if ...
- spring集合类型的setter注入的一个简单例子
在项目中我们有时候会为集合类型设定一些默认的值,使用spring后,我们可以通过配置文件的配置,用setter方式为对象的集合属性提供一些默认值,下面就是一个简单的例子. 首先我们创建了一个名为Col ...
- netsh interface portproxy的一个简单例子
netsh interface portproxy的微软帮助文档地址: https://technet.microsoft.com/zh-cn/library/cc776297(WS.10).aspx ...
- js 排列 组合 的一个简单例子
最近工作项目需要用到js排列组合,于是就写了一个简单的demo. 前几天在网上找到一个写全排列A(n,n)的code感觉还可以,于是贴出来了, 排列的实现方式: 全排列主要用到的是递归和数组的插入 比 ...
随机推荐
- Django框架之跨站请求伪造
跨站请求伪造(英语:Cross-site request forgery),也被称为one-click attack或者session riding,通常缩写为CSRF或者XSRF, 是一种挟制用户在 ...
- mysql hang and srv_error_monitor_thread using 100% cpu(已解决)
昨天晚上,运维过来说有台生产服务器的mysql cpu一直100%,新的客户端登录不了,但是已经在运行的应用都正常可用. 登录服务器后,top -H看了下,其中一个线程的cpu 一直100%,其他的几 ...
- MacBook PRO蓝牙无法搜索设备
背景 经常把MacBook合上盖子就塞进包里,用时打开盖子就继续操作,偶尔会出现刚刚还在用的罗技蓝牙鼠标,重新打开笔记本后就连接不上了,而且也无法搜索到周边的蓝牙设备. 解决方案 快捷键:Option ...
- C#窗体之间事件传值
//第二个窗体 public delegate void DAddress(string address); public event DAddress ESignAddress; pr ...
- junit中test注解测试使用案列解析二
本文原创,转载请注明出处 在上文中,已经简单的解析了junit中test注解的使用方法,今天在进行test测试时,遇到了一个异常,于是想深 入的研究一下. 还原一下今天的异常代码: @Service ...
- ThreadPoolExecutor执行过程分析
ThreadPoolExecutor public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTi ...
- FAST:通过Floodlight控制器下发流表
参考: Floodlight+Mininet搭建OpenFlow(四):流表操作 通过Floodlight控制器下发流表 下发流表的方式有两种: 1.借助Floodlight的北向API,利用curl ...
- 1、Python快速入门(0529)
学习来自马哥教育的视频,感谢马哥 编程语言: 用户: 问题空间 计算机:解决问题 解空间 抽象: 机器代码-->微码编程-->高级语言 (语言的高下级的是根据语言是否被人类容易理解或者更接 ...
- BZOJ 1003: [ZJOI2006]物流运输(spfa+dp)
http://www.lydsy.com/JudgeOnline/problem.php?id=1003 题意: 思路: 首先用spfa计算一下任意两天之内的最短路,dis[a][b]表示的就是在第a ...
- Jmeter测试API接口,用Jmeter自动化之检查DB数据
如上: 注册接口,会新增数据,要怎么自动化检查DB中生成的数据呢? 很简单,只需要以下几个配置元件 JSON截取器或者正则表达式截取器:目的在于取出返回消息体中的数据aa JDBC后置处理器:目的在于 ...