Quartz学习一
2016-04-07 17:22
405 查看
Quartz是一个开源的任务调度库,今天初步学习了Quartz,并搭建了一个小的程序,程序中使用的是最新版的qartz-2.2.2
Job类
SimpleExample类
注意让程序正常运行的话,需要在src目录下添加一个log4j.properties属性文件,其中文件配置如下
Job类
package example1; import java.util.Date; import org.quartz.Job; import org.quartz.JobExecutionContext; import org.quartz.JobExecutionException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class HelloJob implements Job { private static Logger _log = LoggerFactory.getLogger(HelloJob.class); public HelloJob() { } @Override public void execute(JobExecutionContext arg0) throws JobExecutionException { _log.info("Hello World! - " + new Date()); } }
SimpleExample类
package example1; import java.util.Date; import org.quartz.JobDetail; import org.quartz.Scheduler; import static org.quartz.JobBuilder.newJob; import static org.quartz.TriggerBuilder.newTrigger; import static org.quartz.DateBuilder.evenMinuteDate; import org.quartz.SchedulerFactory; import org.quartz.Trigger; import org.quartz.impl.StdSchedulerFactory; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class SimpleExample { public void run() throws Exception { Logger log = LoggerFactory.getLogger(SimpleExample.class); log.info("------ Initializing ------"); SchedulerFactory sf = new StdSchedulerFactory(); Scheduler sched = sf.getScheduler(); log.info("------ Initializing Complete ------"); Date runTime = evenMinuteDate(new Date()); log.info("------- Scheduling Job -------------------"); JobDetail job = newJob(HelloJob.class).withIdentity("job1", "group1").build(); Trigger trigger = newTrigger().withIdentity("trigger1", "group1").startAt(runTime).build(); sched.scheduleJob(job, trigger); log.info(job.getKey() + " will run at: " + runTime); sched.start(); log.info("------- Started Scheduler -----------------"); log.info("------- Waiting 65 seconds... -------------"); try { // wait 65 seconds to show job Thread.sleep(65L * 1000L); // executing... } catch (Exception e) { // } log.info("------- Shutting Down ---------------------"); sched.shutdown(true); log.info("------- Shutdown Complete -----------------"); } public static void main(String[] args) throws Exception { SimpleExample example = new SimpleExample(); example.run(); } }
注意让程序正常运行的话,需要在src目录下添加一个log4j.properties属性文件,其中文件配置如下
log4j.rootLogger=debug, stdout, R log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%5p - %m%n log4j.appender.R=org.apache.log4j.RollingFileAppender log4j.appender.R.File=firestorm.log log4j.appender.R.MaxFileSize=100KB log4j.appender.R.MaxBackupIndex=1 log4j.appender.R.layout=org.apache.log4j.PatternLayout log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n log4j.logger.com.codefutures=DEBUG
相关文章推荐
- iOS - UITextFieldKeyBoardPan为时间选择器
- 使用AJAX异步提交表单的几种方式
- mybatis整合spring、springmvc时业务层无法进行事务回滚问题解决
- SecureCRT突然假死的问题(Ctrl+S)
- LintCode_166_链表倒数第n个节点
- Rman 备份参数 及 oracle 进程理论
- 五大常用算法:分治、动态规划、贪心、回溯、分支限界算法
- Fbric、Ansible、Docker、Chaos Monkey:DevOps工具的年中回顾
- dt dl列表布局
- hdoj 5256 序列变换 【LIS 变形】
- android_design support library-Snackbar
- 深入剖析CSS变形transform(3d)
- (6)
- hdoj 5253 连接的管道 【MST】
- win7 下oracle卸载
- struts.xml不在默认位置,导致出现HTTP Status 404 - There is no Action mapped for namespace [/] and action name [
- Codeforces 588E Duff in the Army 【树链剖分维护区间前k小】
- ios牛人博客
- MySQL与PostgreSQL的 SELECT FOR UPDATE
- 软件需求分析