熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java核心技術 >> 正文

Java定時執行任務的三種方法

2013-11-23 19:24:35  來源: Java核心技術 
    javautilTimer
   
    這個方法應該是最常用的不過這個方法需要手工啟動你的任務
   
    Timer timer=new Timer()
   
    timerschedule(new ListByDayTimerTask()
   
    這裡的ListByDayTimerTask類必須extends TimerTask裡面的run()方法
   
    ServletContextListener
   
    這個方法在web容器環境比較方便這樣在web server啟動後就可以自動運行該任務不需要手工操作
   
    將ListByDayListener implements ServletContextListener接口在contextInitialized方法中加入啟動Timer的代碼在contextDestroyed方法中加入cancel該Timer的代碼然後在webxml中加入listener:
   
    <listener>
   
    <listenerclass>comqqcustomerListByDayListener</listenerclass>
   
    </listener>
   
    orgspringframeworkschedulingtimerScheduledTimerTask
   
    如果你用spring那麼你不需要寫Timer類了在schedulingContexttimerxml中加入下面的內容就可以了
   
    <?xml version= encoding=UTF?>
   
    <!DOCTYPE beans PUBLIC //SPRING//DTD BEAN//EN /dtd/springbeansdtd>
   
    <beans>
   
    <bean id=timer class=orgspringframeworkschedulingtimerTimerFactoryBean>
   
    <property name=scheduledTimerTasks>
   
    <list>
   
    <ref local=MyTimeTask/>
   
    </list>
   
    </property>
   
    </bean>
   
    <bean id=MyTimeTask class=comqqtimerListByDayTimerTask/>
   
    <bean id=MyTimeTask class=orgspringframeworkschedulingtimerScheduledTimerTask>
   
    <property name=timerTask>
   
    <ref bean=MyTimeTask/>
   
    </property>
   
    <property name=delay>
   
    <value></value>
   
    </property>
   
    <property name=period>
   
    <value></value>
   
    </property>
   
    </bean>
From:http://tw.wingwit.com/Article/program/Java/hx/201311/26815.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.