最近在开发的过程中,经常要使用系统自动清零的操作,比如说:系统在给定的时间跟客户发送电子邮件,在指定的时间段内执行某些操作等等,如果我们只是人工去操作的话不但步骤非常的麻烦而且觉得这是一个工作量非常大的任务,有了quartz框架以后我们所有的任务多可以交给它去做,程序员唯一要做的只是编写代码并配置一下程序就OK了,这样大大提高了开发速度和工作效率.配置步骤如下:
1、编写quartz.properties文件:代码如下:
#============================================================================
# Configure Main Scheduler Properties
#============================================================================
org.quartz.scheduler.instanceName = QuartzScheduler
org.quartz.scheduler.instanceId = AUTO
#org.quartz.scheduler.rmi.export = false
#org.quartz.scheduler.rmi.proxy = false
#============================================================================
# Configure ThreadPool
#============================================================================
org.quartz.threadPool.class = org.quartz.simpl.SimpleThreadPool
org.quartz.threadPool.threadCount = 4
org.quartz.threadPool.threadPriority = 5
#============================================================================
# Configure Plugins
#============================================================================
#org.quartz.plugin.triggHistory.class = org.quartz.plugins.history.LoggingJobHistoryPlugin
org.quartz.plugin.jobInitializer.class = org.quartz.plugins.xml.JobInitializationPlugin
org.quartz.plugin.jobInitializer.fileName = /scheduler/quartz_job.xml
org.quartz.plugin.jobInitializer.overWriteExistingJobs = false
org.quartz.plugin.jobInitializer.failOnFileNotFound = true
org.quartz.plugin.jobInitializer.scanInterval = 10
org.quartz.plugin.shutdownhook.class = org.quartz.plugins.management.ShutdownHookPlugin
org.quartz.plugin.shutdownhook.cleanShutdown = true
#org.quartz.jobStore.class = org.quartz.simpl.RAMJobStore
2、编写quartz_job.xml
<?xml version='1.0' encoding='utf-8'?>
<quartz>
<job>
<job-detail>
<name>test</name>
<group>DEFAULT</group>
<description>testJobhere</description>
<job-class>scheduler.TestJob</job-class>
<job-data-map allows-transient-data="true">
<entry>
<key>name</key>
<value>test</value>
</entry>
</job-data-map>
</job-detail>
<trigger>
<cron>
<name>testCron</name>
<group>DEFAULT</group>
<job-name>test</job-name>
<job-group>DEFALUT</job-group>
<!--x/? x表示间断启动时间 ?表示执行间隔时间 13启动时间-->
<cron-expression>0 1/2 23 * * ?</cron-expression>
<!--每月1号0点执行
<cron-expression>0 1 0 1 1-12 ?</cron-expression>
-->
</cron>
</trigger>
</job>
3、编写java代码进行测试:
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
public class ZeroCount implements Job{
public void execute(JobExecutionContext context) throws JobExecutionException
{
String name = context.getJobDetail().getJobDataMap().getString("name");
System.out.println(name);
}
}
出下以下结果表示配置成功:
test
4、此步骤是最后一步也是最重要的一步,只要加入如下代码的到/WEB-INF/web.xml文件中在指定的时间内就会执行系统调度.
<servlet>
<servlet-name>QuartzInitializer</servlet-name>
<servlet-class>org.quartz.ee.servlet.QuartzInitializerServlet</servlet-class>
<init-param>
<param-name>config-file</param-name>
<param-value>/quartz.properties</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
<init-param>
<param-name>shutdown-on-unload</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>start-scheduler-on-load</param-name>
<param-value>true</param-value>
</init-param>
</servlet>
参考网站:http://www.iocblog.net/project/quartz.html
转载:http://www.blogjava.net/sunwch/archive/2008/11/21/quartz.html
分享到:
相关推荐
java quartz详解
非常详细的Quartz详细入门教程。新手值得一看,高手请忽略。
Quartz使用详解 Quartz使用详解 Quartz使用详解 Quartz使用详解 Quartz使用详解 Quartz使用详解
一整套springboot和quartz的架构融合,解决独立调度问题,任务更加简单,完整的一套案例,包含项目所有文件
官方Quartz.NET 2.3.1 源码(官方2015.1.15更新) 附带15个示例 全部可用
主要介绍了spring整合Quartz框架过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
Quartz定时任务详解
详细介绍CronExpression表达式设定定时任务的规则
OpenSymphony 的Quartz提供了一个比较完美的任务调度解决方案。 Quartz 是个开源的作业调度框架,为在 Java 应用程序中进行作业调度提供了简单却强大的机制。 Quartz中有两个基本概念:作业和触发器。作业是...
定时任务quartz
1、Quartz2D自定义view 2、核心方法drawRect: 3、Quartz2D绘图的代码步骤 1、常用拼接路径函数
spring-cloud-alibaba+dubbo+nacos+quartz以yml配置方式实现
包含一个Quartz文档+2个Quartz时间表达式配置详解 Quartz所用到的jar包 共5个 Quartz的简单列子,带注释
1. 首先,说说 quartz.config 文件1) 先将上一篇中的配置贴出来# You can configure your scheduler i
很不错的quarts scheduler的学习书籍,能帮助初学者快速的入门quarts scheduler框架和运用。
最近学习“黑马程序员”的“精品详解石英视频”教程,顺便将课程的笔记整理出来,发现网上根本搜不到视频的笔记资料,遂将此资料分享出来,若有侵权,请联系本人 教程 一,石英概念 Quartz是OpenSymphony开放式组织...
主要介绍了Java Spring中Quartz调度器详解及实例的相关资料,需要的朋友可以参考下
主要介绍了Spring quartz Job依赖注入使用详解的相关资料,Spring quartz Job不能依赖注入,Spring整合quartz Job任务不能注入Spring4整合quartz2.2.3中Job任务使用@Autowired不能注入,需要的朋友可以参考下
什么是Quartz2D?Quartz 2D是一个二维绘图引擎,同时支持iOS和Mac系统。下面这篇文章主要介绍了iOS开发之Quartz2D的介绍与使用的相关资料,需要的朋友可以参考下
本文档包含以下章节:1、quartz简介;2、quartz快速入门;3、quartz核心API详解;4、quartz.properties配置详解;5、quartz持久化;6、quartz集群部署;7、springboot整合quartz。8、常见分布式调度框架的比较;