Quartz使用技巧总结
来源:互联网 发布:全国汽车保有量数据 编辑:程序博客网 时间:2024/05/22 14:38
一、Quartz 是一个很好的定时器框架,并且支持集群技术。
它的定时任务的配置信息默认是保存在内存中的,这个可以从它的框架默认配置quartz.properties中看出:org.quartz.jobStore.class = org.quartz.simpl.RAMJobStore
你也可以复写quartz.properties,改变默认配置将定时任务配置信息写入数据库,我的配置:
</pre><pre name="code" class="html">#============================================================================# Configure JobStore #============================================================================org.quartz.jobStore.misfireThreshold = 60000org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore.JobStoreTXorg.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.PostgreSQLDelegateorg.quartz.jobStore.useProperties = falseorg.quartz.jobStore.dataSource = myDSorg.quartz.jobStore.tablePrefix = QRTZ_org.quartz.jobStore.isClustered = true#============================================================================# Configure Datasources #============================================================================org.quartz.dataSource.myDS.driver = com.kingbase.Driverorg.quartz.dataSource.myDS.URL = jdbc:kingbase://localhost:54321/nudtbpm?ClientEncoding=GBKorg.quartz.dataSource.myDS.user = SYSTEMorg.quartz.dataSource.myDS.password = MANAGERorg.quartz.dataSource.myDS.maxConnections = 5
Quartz 有自己的12张表:可以参考它的sql文件:quartz-1.8.6\docs\dbTables文件夹中可以找到.
二、怎么开始一个简单的定时任务?
public static void main(String[] args) {// TODO Auto-generated method stubtry {Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();// define the job and tie it to our HelloJob class JobDetail job = new JobDetail("first-quartz-job2", "default", Class.forName("nudt.bpm.dummy.MyJobTest"));//这里配置了一个执行任务的类 // Trigger the job to run now, and then repeat every 10 seconds CronTrigger trigger = new CronTrigger("first-quartz-job2", "default");//任务触发器 CronExpression croE = new CronExpression("0/10 * * * * ?");//Cron表达式,网上有很多详细的介绍,不懂的同学可以查阅 trigger.setCronExpression(croE); // Tell quartz to schedule the job using our trigger scheduler.scheduleJob(job, trigger);//将任务计划持久化到数据库 scheduler.start();//开始任务计划// scheduler.pauseTrigger("first-quartz-job", "default");// scheduler.pauseJob("first-quartz-job", "default");// scheduler.deleteJob("first-quartz-job", "default");//删除任务// scheduler.resumeTrigger("first-quartz-job", "default");// scheduler.resumeJob("first-quartz-job", "default");//手工启动任务// Thread.sleep(30000);} catch (SchedulerException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (ClassNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (ParseException e) {// TODO Auto-generated catch blocke.printStackTrace();} //catch (InterruptedException e) {// TODO Auto-generated catch block//e.printStackTrace();//}}
这里也把我的执行任务类简单罗列出来,以供参考:
public class MyJobTest extends QuartzJobBean{/*@Overridepublic void execute(JobExecutionContext arg0) throws JobExecutionException {// TODO Auto-generated method stubSystem.out.println("job execte...time is:"+new Date());}*/@Overrideprotected void executeInternal(JobExecutionContext arg0) throws JobExecutionException {// TODO Auto-generated method stubSystem.out.println("job execte...time is:"+new Date());}}
参考:http://shmilyaw-hotmail-com.iteye.com/blog/2169156
http://www.blogjava.net/stevenjohn/archive/2015/07/23/426393.html
1 0
- Quartz使用技巧总结
- Quartz.net使用总结
- Quartz使用示例总结
- Quartz使用总结
- Quartz使用示例总结
- Quartz使用示例总结
- Quartz使用示例总结
- Quartz使用示例总结
- Quartz使用示例总结
- Quartz使用总结
- Quartz使用总结
- Quartz使用总结
- Quartz使用总结
- Quartz使用总结
- Quartz使用总结 一
- [转]Quartz使用示例总结
- Quartz使用示例总结(转载)
- Quartz使用示例总结(转载)
- How to justify if a windows program is 32 bit or 64 bit
- CodeForces 703D Mishka and Interesting sum
- 操作系统进程与线程
- 利用搜索法求百万以内的素数
- WIN7(64bit)编译运行gh0st3.6
- Quartz使用技巧总结
- Android ExpandableListView使用指南
- 整理笔记---Hibernate二级缓存
- 怎么判断一个点是否在多边形区域内
- HDU 5802 Windows 10(dfs)
- 充电website note
- ibatis 使用学习入门
- VC2010 MFC中实现printf调试功能,即MFC程序利用控制台输出调试信息。
- Struts2访问request、session、application对象