成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

quartz實現(xiàn)定時任務(wù)

tylin / 1009人閱讀

摘要:一介紹在企業(yè)應(yīng)用中,我們經(jīng)常會碰到時間任務(wù)調(diào)度的需求,比如每天凌晨生成前天報表,每小時生成一次匯總數(shù)據(jù)等等。三者關(guān)系簡單來說就是,調(diào)度器負責(zé)調(diào)度各個任務(wù),到了某個時刻或者過了一定時間,觸發(fā)器觸動了,特定任務(wù)便啟動執(zhí)行。

一、Quartz介紹

  在企業(yè)應(yīng)用中,我們經(jīng)常會碰到時間任務(wù)調(diào)度的需求,比如每天凌晨生成前天報表,每小時生成一次匯總數(shù)據(jù)等等。Quartz是出了名的任務(wù)調(diào)度框架,它可以與J2SE和J2EE應(yīng)用程序相結(jié)合,功能灰常強大,輕輕松松就能與Spring集成,使用方便。

二、Quartz中的概念

  主要有三個核心概念:調(diào)度器、任務(wù)和觸發(fā)器。三者關(guān)系簡單來說就是,調(diào)度器負責(zé)調(diào)度各個任務(wù),到了某個時刻或者過了一定時間,觸發(fā)器觸動了,特定任務(wù)便啟動執(zhí)行。概念相對應(yīng)的類和接口有:

  1)JobDetail:望文生義就是描述任務(wù)的相關(guān)情況;

  2)Trigger:描述出發(fā)Job執(zhí)行的時間觸發(fā)規(guī)則。有SimpleTrigger和CronTrigger兩個子類代表兩種方式,一種是每隔多少分鐘小時執(zhí)行,則用SimpleTrigger;另一種是日歷相關(guān)的重復(fù)時間間隔,如每天凌晨,每周星期一運行的話,通過Cron表達式便可定義出復(fù)雜的調(diào)度方案。

  3)Scheduler:代表一個Quartz的獨立運行容器,Trigger和JobDetail要注冊到Scheduler中才會生效,也就是讓調(diào)度器知道有哪些觸發(fā)器和任務(wù),才能進行按規(guī)則進行調(diào)度任務(wù)。

三、Spring中使用Quartz

1,所需jar包:quartz.jar,spring.jar,commons-collections-3.2.jar;

  2,添加業(yè)務(wù)邏輯類(簡單示例):

public class UserHeartBeat {

public void Show(){

Calendar cal=Calendar.getInstance();

    long date=cal.getTime().getTime();

    SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss:SSS");

    String result=sdf.format(date);

    System.out.println(result);

    System.out.println("Spring Quartz Test");

}

public static void main(String args[]){

    new UserHeartBeat().Show();

}

}

這個類的作用就是用來定義每隔多久要做的事情

 3,配置文件(applicationContext.xml) 用來配置定時任務(wù)






 







    







    Show









    

        

    

    

    

        10,15,20,25,30,35,40,45,50,55 * * * * ?

    





    

        

            

        

    


其中間隔時間的配置說明見 定時任務(wù)配置的間間隔配置說明

4.在主配置文件web.xml中注冊定時任務(wù)的配置文件(applicationContext.xml)

    spring

    org.springframework.web.context.ContextLoaderServlet

    1





    spring

    *.do







    contextConfigLocation

    /WEB-INF/classes/ApplicationContext.xml



 5.定義一個測試類來調(diào)用定時任務(wù)

public static void main(String[] args) {

    System.out.println("Spring Quartz test start...");

    ApplicationContext context=new ClassPathXmlApplicationContext("ApplicationContext.xml");

// 如果配置文件中將startQuertz bean的lazy-init設(shè)置為false 則不用實例化

    System.out.println("Spring Quartz test end...");

}

運行效果

案例下載地址 鏈接描述

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/74766.html

相關(guān)文章

  • Springboot整合Quartz實現(xiàn)動態(tài)定時任務(wù)

    摘要:本文使用實現(xiàn)對定時任務(wù)的增刪改查啟用停用等功能。并把定時任務(wù)持久化到數(shù)據(jù)庫以及支持集群。決定什么時候來執(zhí)行任務(wù)。定義的是任務(wù)數(shù)據(jù),而真正的執(zhí)行邏輯是在中。封裝定時任務(wù)接口添加一個暫?;謴?fù)刪除修改暫停所有恢復(fù)所有 簡介 Quartz是一款功能強大的任務(wù)調(diào)度器,可以實現(xiàn)較為復(fù)雜的調(diào)度功能,如每月一號執(zhí)行、每天凌晨執(zhí)行、每周五執(zhí)行等等,還支持分布式調(diào)度。本文使用Springboot+Myba...

    IamDLY 評論0 收藏0
  • Java 定時任務(wù)系列(2)-Spring 定時任務(wù)的幾種實現(xiàn)

    本文來自網(wǎng)絡(luò)一些博客的整理(包括gong1208的博客 dary1715的博客) 1、簡介 這個系列介紹Spring框架實現(xiàn)定時任務(wù)的兩種方式以及一些高級的用法,包括: 1、使用Quartz,這是一個功能比較強大的的調(diào)度器,可以讓你的程序在指定時間執(zhí)行,也可以按照某一個頻度執(zhí)行,配置起來稍顯復(fù)雜,稍后會詳細介紹。 2、Spring3.0以后自帶的task,可以將它看成一個輕量級的Quartz,而且...

    roadtogeek 評論0 收藏0
  • Spring 定時任務(wù)

    摘要:在定時器接口的方法中我們可以發(fā)現(xiàn)一個方法接受接口,而也是一個接口,抽象了觸發(fā)任務(wù)執(zhí)行的觸發(fā)器。更常用的一個觸發(fā)器是,它使用表達式指定何時執(zhí)行任務(wù)。配置定時任務(wù)首先看看配置。配置提供了命名空間,讓配置定時任務(wù)非常簡單。 本文參考自Spring官方文檔 34. Task Execution and Scheduling。 在程序中常常有定時任務(wù)的需求,例如每隔一周生成一次報表、每個月月末清...

    justCoding 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<