java 任务调度框架_Java任务调度框架Quartz入门

Quartz是一个轻量级的Java任务调度框架,广泛应用于Java应用中,可与Spring集成。它提供了灵活的调度机制,包括SimpleTrigger和CronTrigger,支持任务持久化和容错。在Spring中使用Quartz可以通过MethodInvokingJobDetailFactoryBean和CronTriggerFactoryBean简化配置。本文是Quartz的入门介绍,后续将探讨更多高级用法和实战。
摘要由CSDN通过智能技术生成

Quartz[kwɔːts]:石英,其框架和名字一样简单朴素又不失魅力,在Java程序界,Quartz大名鼎鼎,很多Java应用几乎都集成或构建了一个定时任务调度系统,Quartz是一个定时任务调度框架(Quartz官网:http://www.quartz-scheduler.org/)。这个工具

在美团中的有大量使用,详见他们的官方博客:http://tech.meituan.com/ 。Quartz是一个很轻量级的java库,几乎包含了所有定时的功能。主要接口是Schedule,提供了一些简单的操作:安排任务或取消任务,启动或者停止任务。如果你想在应用中使用Quartz,

应该实现Job接口,包含了一个execute()方法。如果你想在一个任务执行时间到了的时候通知你,组件应该实现TriggerListener 或者JobListener 接口。Quartz任务可以在你的应用中启动和执行,可以作为一个独立的应用程序(通过RMI接口[即Remote Method

Invoke 远程方法调用]),也可是在一个J2EE应用中执行。

1. 何为定时任务调度框架?

简而言之,它可以领会我们的意图在未来某个时刻做我们想要做的事情,比如,每月月末的财务报表给财务部门,定时给领导发个邮件短信等等。这时候我们就需要用到任务调度框架Quartz了。其不仅简单易使用,并且可以与spring集成(这才是重点哦!就目前而

言,一个Java项目其基础框架不外乎SSH(struts2+spring+hibernate)、SSM(springMVC+spring+mybatis)。当然,也有一些团队喜欢springMVC+spring+hibernate这样搭建。不过,无论是那种搭配spring几乎是不可或缺的)。任务调度本身涉及到多线程

并发、运行时间规则制定和解析、场景保持与恢复、线程池维护等诸多方面的工作。如果直接使用自定义线程这种刀耕火种的原始办法,开发任务调度程序是一项颇具挑战性的工作。Java开源的好处就是:领域问题都能找到现成的解决方案(所以圈里也流行这么一句:

天上飞的理念,必有落地的产品)。

但任务调度除以时间为关注点外,还应考虑资源的分配。大多数系统都要对资源使用进行控制:服务线程的最大数目必须限额;考虑使用线程池以便共享服务的线程资源、降低频繁创建、销毁线程的消耗。

2. Quartz是什么?

Quartz是一个任务调度框架(库),它几乎可以集成到任何应用系统中。术语”job schedule”似乎为不同的人提供了不同的想法。总之,作业调度是负责执行(或通知)其他软件组件在预定时间执行的服务组件。虽然通过schedule可以简单实现一些系统任务定时执

行,当您学习如何使用它来驱动应用程序的业务流程的流程时,Quartz的全部潜力是可以实现的。

3. Quartz的一些特点

1)非常灵活的,并包含多个使用范例,它们可以单独或一起使用,以实现您所期望的行为,并使您能够以最“自然”的方式来编写您的项目的代码。

2)非常轻量级的,只需要非常少的配置 —— 它实际上可以被跳出框架来使用,如果你的需

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值