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