久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Spring定時器在同一時間重復(fù)執(zhí)行兩次

 無不館 2015-05-29
Spring定時器在同一時間重復(fù)執(zhí)行兩次

 

Spring定時器在同一時間重復(fù)執(zhí)行兩次

解決方案如下:

 

最近用Springquartz定時器的時候,,發(fā)現(xiàn)到時間后,,任務(wù)總是重復(fù)執(zhí)行兩次,在tomcatjboss下都如此,。
打印出他們的hashcode,,發(fā)現(xiàn)是不一樣的,也就是說,,在web容器啟動的時候,,重復(fù)啟了兩個quartz線程。 
研究下來發(fā)現(xiàn)quartz確實會加載兩次: 
第一次:web容器啟動的時候,,讀取applicationContext.xml文件時,,會加載一次,。 
第二次:Spring本身會加載applicationContext.xml一次。 
而我的quartz配置就是寫在applicationContext.xml文件里的,。 

解決辦法很簡單 
先把quartz配置信息提取出來,,單獨存成一個文件,比如applicationContext-quartz.xml 
然后修改web.xml,,讓web容器啟動時,,可以加載該文件 

這樣quartz只會在web容器啟動時加載一次,Spring不會再加載了,。

 

web.xml配置如下:

 
    contextConfigLocation
    /WEB-INF/classes/applicationContext.xml,/WEB-INF/classes/applicationContext-timertask.xml
 
 
 
      
           org.springframework.web.context.ContextLoaderListener
      
  

 

把定時器的配置單獨寫成一個配置文件,,在web容器啟動的時候只加載一次


    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點,。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報,。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多