在java中利用JDK自帶的TimerTask實(shí)現(xiàn)定時(shí)任務(wù)
Posted on 2009-12-13 22:41 Gavin.lee 閱讀(1078) 評(píng)論(0) 編輯 收藏 所屬分類(lèi): SSH2 --Spring 在web方式下,如果我們要實(shí)現(xiàn)定期執(zhí)行某些任務(wù)的話(huà),除了用quartz等第三方開(kāi)源工具外,我們可以使用Timer和TimeTask來(lái)完成指定的定時(shí)任務(wù)。專(zhuān)業(yè)的開(kāi)源工具可參考Quartz:http://www.opensymphony.com/quartz/
第一步:創(chuàng)建一個(gè)任務(wù)具體操作類(lèi),實(shí)現(xiàn)ServletContextListener 接口 MyListener.java











//可寫(xiě)多個(gè)定時(shí)任務(wù)







timer.schedule(task, time);
// time為Date類(lèi)型:在指定時(shí)間執(zhí)行一次。
timer.schedule(task, firstTime, period);
// firstTime為Date類(lèi)型,period為long
// 從firstTime時(shí)刻開(kāi)始,每隔period毫秒執(zhí)行一次。
timer.schedule(task, delay)
// delay 為long類(lèi)型:從現(xiàn)在起過(guò)delay毫秒執(zhí)行一次
timer.schedule(task, delay, period)
// delay為long,period為long:從現(xiàn)在起過(guò)delay毫秒以后,每隔period
// 毫秒執(zhí)行一次。
第二步:創(chuàng)建一個(gè)時(shí)間任務(wù)類(lèi) MyTask.java












第三步:在web.xml中添加一個(gè)監(jiān)聽(tīng)器








通過(guò)配置監(jiān)聽(tīng)器,那么在web服務(wù)器啟動(dòng)的時(shí)候,任務(wù)也被啟動(dòng),并且會(huì)周期性的執(zhí)行
參考文章:http://www.aygfsteel.com/fastunit/archive/2008/02/15/180116.html