spring下quartz啟動兩次的問題

2021-08-31 05:13:59 字數 797 閱讀 6643

最近正在做的專案,測試的時候發現定時排程任務會執行兩次,於是乎查資料呀,都說是tomcat配置問題,哥改了還是不行,後來無奈使用了乙個網上說的方法,將job中的方法使用同步,通過乙個靜態變數進行控制,配置如下:

dosend

false

dodelete

false

0 0 * * * ?

0 0 3 * * ?

job如下:

public class offmailreportjob extends quartzjobbean 

public void setisolationareaservice(iisolationareaservice isolationareaservice)

private static jlogger log = logge***ctory.getlogger(offmailreportjob.class);

static int sendindexflag =0;//由dosend修改,其他方法不要修改此引數

public void dosend() catch (exception e)

sendindexflag = 0;// 鎖定解除

} @override

protected void executeinternal(jobexecutioncontext arg0)

throws jobexecutionexception

照此修改時可以解決問題滴

後台又查啊查的,發現問題的根本:

在Spring 下配置Quartz集群

由於專案將要上線,而專案中的quartz集群配置一直沒時間弄,本以為應該是一件挺簡單的事,沒想到gooble了一兩天才解決問題,主要是因為spring到3.0.7這個版本為止都沒有原生支援quartz的集群,原來的quartz配置在單例項下執行正常,配置集群之後各種異常都來了,今天終於配置成功,在這...

Spring下Quartz的配置及說明

quartz在我看來說簡單點就是乙個很好的定時器,是而且操作簡單,當你需要早上8點執行某個方法或者每隔1分鐘執行某個方法時選他是相當不錯的選擇了,當然了,在spring框架下。還有 配置?很簡單,你只要記得在配置檔案中在 存放定時執行的方法就可以了 0 0 1 cleanlogmap 當然了,上面要...

Spring整合使用quartz

spring已經整合了quartz,在spring中使用quartz的一般步驟為 1.實現任務類 public class productadschedulemanagerimpl 2.在spring xml 配置檔案中配置任務類bean 3.在spring xml 配置檔案中配置methodinv...