Spring環境下實現定時執行任務

2021-06-21 13:41:49 字數 957 閱讀 4517

經常有遇到需要定時同步資料的需求,現在分享下spring框架下使用quartz外掛程式實現定時執行程式的方法。

首先,要準備的是quartz外掛程式的架包,我測試的版本是:quartz-all-1.6.6.jar

建立定時任務所需的配置檔案,以「quartzconfig.xml」為例

<?xml version="1.0" encoding="utf-8"?>

syncustomer

此處呼叫的是com.***.customeraction類中的syncustomer方法,此方法無引數傳遞。

定時時間的格式為:[秒] [分] [小時] [日] [月] [周] [年]

'*' 表示所有值,'?' 表示不指定值,'-' 表示區間,','表示指定多個值。

提供幾個例子:

0 15 10 * * ? 2005  2023年每天10點15分觸發

0 15 10 ? * mon-fri  從周一到周五每天上午的10點15分觸發

0 0 12 1/5 * ?  每月的第乙個中午開始每隔5天觸發一次

0 11 11 11 11 ?  每年的11月11號 11點11分觸發(光棍節)

web.xml中配置載入quartzconfig.xml和監聽

contextconfiglocation

classpath:quartzconfig.xml

org.springframework.web.context.contextloaderlistener

可能會出現的問題,定時時間到時執行2次或多次所指定的方法

造成的原因可能是,在其他配置檔案中有重複載入監聽,或者是tomcat中有配置虛擬目錄,均需要仔細檢查配置檔案。

---end---

玩的愉快~

如何在Linux環境下實現定時執行PHP的計畫任務

實踐操作如下 1 工具 putty.exe 2 伺服器環境 ubuntu linux系統 thinkphp 3.1.3 php5.6 mysql 4 然後,在專案根目錄下建立cron.php,如下 url timeout 60 data array header array ch curl init...

使用Spring整合Quartz定時執行任務

在修改乙個專案的工程中。發現任務竟然沒有生成。多次檢視這個專案。終於在spring的配置中發現了定時任務。使用spring整合quartz來定時執行某個類中的方法。於是經過上網查資料,終於實驗成功了。1.首先匯入了spring的jar包和quartz的jar包 在spring的配置檔案中。把需要執行...

Linux下實現定時執行程式 crontab

在linux下,用crontab實現定時執行程式的功能。使用方式 crontab file u user 用指定的檔案替代目前的crontab。crontab u user 用標準輸入替代目前的crontab.crontab l user 列出使用者目前的crontab.crontab e user...