1. 程式人生 > >quartz實現定時功能例項詳解(servlet定時器配置方法)

quartz實現定時功能例項詳解(servlet定時器配置方法)


<servlet> 
   <servlet-name>QuartzInitializer</servlet-name> 
   <servlet-class>org.quartz.ee.servlet.QuartzInitializerServlet</servlet-class> 
   <init-param>
     <param-name>shutdown-on-unload</param-name>
     <param-value>true</param-value>
   </init-param>
   <init-param>
    <param-name>config-file</param-name>
    <param-value>quartz.properties</param-value> 
   </init-param>
   <load-on-startup>2</load-on-startup>
 </servlet>
listener配置可以看原始碼,主要的上面的引數配置為<context-param>,再加一個<listener>.

上面提到了quartz.properties,這是自行指定的,Quartz提供了一個預設的配置檔案,可以滿足基本的j2se應用,如果在web應用中,我們想把job,trigger配置都寫到檔案中,就需要自己來寫,並指定在初始化時載入我們自己的quratz.properties,位置放在classes下。

#============================================================================
# Configure Main Scheduler Properties  
#============================================================================
org.quartz.scheduler.instanceName = org.quartz.scheduler.instanceId = AUTO
#============================================================================
# Configure ThreadPool  
#============================================================================
org.quartz.threadPool.class = org.quartz.simpl.SimpleThreadPool
org.quartz.threadPool.threadCount = 3
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_jobs.xml
org.quartz.plugin.jobInitializer.overWriteExistingJobs = true
org.quartz.plugin.jobInitializer.failOnFileNotFound = true
org.quartz.plugin.jobInitializer.scanInterval = 10

quartz要使用外掛來載入自己的xml配置檔案,上邊我們指定了在初始化時載入classes/scheduler/quartz_jobs.xml,預設的是載入classes/quartz_jobs.xml檔案。

quartz_jobs.xml檔案:
<?xml version='1.0' encoding='utf-8'?>
<quartz>
 <job>
   <job-detail>
    <name>test</name>
    <group>DEFAULT</group>
    <description>testJobhere</description>
    <job-class>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>
                 <cron-expression>0/3 * * * * ?</cron-expression>
             </cron>
       </trigger>
  </job>
</quartz>

相關推薦

quartz實現定時功能例項(servlet定時配置方法)

<servlet>     <servlet-name>QuartzInitializer</servlet-name>     <servlet-class>org.quartz.ee.servlet.QuartzInitializerServlet<

Struts2實現單檔案的上傳功能例項及原始碼

  Struts2完成檔案的上傳功能例項 10級學員 郞志課堂筆記 在這裡通過一個例項簡單寫一下struts2實現檔案上傳的流程。 首先通過手寫的方式寫一個上傳的流程 第一步:建立相應的jsp頁面 <%@ page language="java" import="ja

JavaWeb中使用JavaMail實現傳送郵件功能例項

現在很多的網站都提供有使用者註冊功能, 通常我們註冊成功之後就會收到一封來自注冊網站的郵件。郵件裡面的內容可能包含了我們的註冊的使用者名稱和密碼以及一個啟用賬戶的超連結等資訊。今天我們也來實現一個這樣的功能,使用者註冊成功之後,就將使用者的註冊資訊以Email的形式傳送到使

spring框架使用Quartz執行定時任務例項

Quartz簡介   1.Quartz,是一個完全由java編寫的開源作業排程框架。它包含了排程器監聽、作業和觸發器監聽,而我們在專案中最常用到的就是它可以作為一個定時器,可以隨時配置監聽、觸發任務進行作業。   2.在Spring的框架裡,Quartz已經

Lambda表示式--Java8的新功能案例(2) Lambda表示式的方法引用

Lambda表示式與內部類相比有很多限制,比如只能為函式式介面建立例項,但是Lambda表示式大大簡化了程式碼的書寫。 Lambda表示式的方法引用主要分為下面幾類: 1.引用類方法 2.引用特定物件的例項方法 3.引用某類物件的例項方法 4.引用構造方法 下面通過幾個例項

Django-auth-ldap 配置方法

使用場景 公司內部使用Django作為後端服務框架的Web服務,當需要使用公司內部搭建的Ldap 或者 Windows 的AD伺服器作為Web登入認證系統時,就需要這個Django-auth-ldap第三方外掛 外掛介紹 Django-auth-ldap是一個Django身份驗證後端,可以針對LDAP服

例項js實現登入與註冊介面

本文主要為大家詳細介紹了js實現登入與註冊介面,具有一定的參考價值,感興趣的小夥伴們可以參考一下,希望能幫助到大家。     完成登入與註冊頁面的HTML+CSS+JS,其中的輸入項檢查包括: 使用者名稱6-12位 首字母不能是數字 只能包含字母和數字

C語言單鏈表實現19個功能完全

#include "stdafx.h" #include "stdio.h" #include <stdlib.h> #include "string.h"   typedef int elemType ;   /************************

例項如何實現來電攔截及攔截後的提示音

先說下幾個要點:1. 電話攔截這個功能大家可能都知道了,就是利用反射原理呼叫ITelephony的隱藏方法來實現。這個就不說了,在附件的程式碼裡有。2.攔截後提示忙音/空號/已關機/已停機這個功能其實是要用到MMI指令,具體如何設定來電轉駁的指定可以參考這裡 http://

Servlet實現檔案上傳與實戰

    檔案上傳 1.客戶端程式設計 要上傳檔案,必須利用mutipart/form-data 設定HTML表單的enctype 屬性值 <form action="action"  enctype="mutipart/form-data"  method="po

TCP三次握手報文 例項&&syn flood C/C++ 完整程式碼實現

在TCP/IP協議中,TCP協議提供可靠的連線服務,採用三次握手建立一個連線。 第一次握手: 建立連線時,客戶端傳送syn包到伺服器,並進入SYN_SENT狀態,等待伺服器確認;SYN:同步序列編號(Synchronize Sequence Numbers)。 第二次握手

一個應用例項卡爾曼濾波及其演算法實現

為了可以更加容易的理解卡爾曼濾波器,這裡會應用形象的描述方法來講解,而不是像大多數參考書那樣羅列一大堆的數學公式和數學符號。但是,他的5條公式是其核心內容。結合現代的計算機,其實卡爾曼的程式相當的簡單,只要你理解了他的那5條公式。在介紹他的5條公式之前,先讓我們來根據下面的例子一步一步的探索。假設我們要研究的

WinForm實現最小化到系統托盤方法例項

本文例項講述了WinForm實現最小化到系統托盤方法。分享給大家供大家參考。具體分析如下: 有個叫NotifyIcon的控制元件 1、建個WinForm專案,其它操作略過。 2、拉個NotifyIcon控制元件,將屬性Visable設定成False,在Text屬性上隨便填些檔案。 3、實現Form的Size

Linux Rootkit系列三:例項 Rootkit 必備的基本功能

前言 鑑於筆者知識能力上的不足,如有疏忽,歡迎糾正。 測試建議: 不要在物理機測試!不要在物理機測試! 不要在物理機測試! 概要 在 上一篇文章中筆者詳細地闡述了基於直接修改系統呼叫表 (即 sys_call_table /ia32_sys_call_

vb.net 實現TCP/IP協議例項(使用Socket實現)

最近因專案需求要求實現基於vb.net的TCP/IP協議,在網上也沒有找到特別好的例項,故在學習完成後寫下如下文字,僅供大家學習,如有錯誤還請大家批評指正,感謝!本文主要由三部分組成,第一部分展示程式碼實現的功能;第二部分解釋部分與程式碼相關的基礎知識;第三部分講解伺服器端與

定時任務排程之Sping的@Scheduled註解例項

最近開發了一個簡單的用來監控線上各個產品的任務排程執行率的小系統,則考慮在監聽系統中使用定時任務來持續監控每個產品系統的定時任務執行率。 理一下: 監聽系統構建排程模組–》用來監控–》各個線上產品系統的任務排程模組的執行率(每個產品系統本身又存在自己

SSO單點登入基本概念實現思路以及小的例項

一、什麼是單點登入SSO(Single Sign-On)   SSO是一種統一認證和授權機制,指訪問同一伺服器不同應用中的受保護資源的同一使用者,只需要登入一次,即通過一個應用中的安全驗證後,再訪問其他應用中的受保護資源時,不再需要重新登入驗證。 二、單點登

mybatis如何實現批量更新和插入新增例項(附SQL以及mapper配置)

Mybatis批量插入、批量修改 批量插入 step1:建立DB表 CREATE TABLE `student_info` ( `STUDENT_ID` BIGINT(20) NOT NULL A

fnmatch例項(與readdir、opendir實現模糊查詢)

fnmatch:int fnmatch(const char *pattern, const char *string, int flags); man中是這麼寫道:The  fnmatch()  function checks whether the string arg

PHP和Redis實現在高並發下的搶購及秒殺功能示例

出現 comm 不同 高並發 日誌 sql 推薦 結果 update 搶購、秒殺是平常很常見的場景,面試的時候面試官也經常會問到,比如問你淘寶中的搶購秒殺是怎麽實現的等等。搶購、秒殺實現很簡單,但是有些問題需要解決,主要針對兩個問題: 一、高並發對數據庫產生的壓力二、競爭