java 編寫(xiě)定時(shí)器實(shí)例 每天定時(shí)執(zhí)行和N分鐘執(zhí)行一次_第1頁(yè)
java 編寫(xiě)定時(shí)器實(shí)例 每天定時(shí)執(zhí)行和N分鐘執(zhí)行一次_第2頁(yè)
java 編寫(xiě)定時(shí)器實(shí)例 每天定時(shí)執(zhí)行和N分鐘執(zhí)行一次_第3頁(yè)
java 編寫(xiě)定時(shí)器實(shí)例 每天定時(shí)執(zhí)行和N分鐘執(zhí)行一次_第4頁(yè)
java 編寫(xiě)定時(shí)器實(shí)例 每天定時(shí)執(zhí)行和N分鐘執(zhí)行一次_第5頁(yè)
已閱讀5頁(yè),還剩7頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Java定時(shí)器的使用,這里簡(jiǎn)單的說(shuō)兩種使用方式。在這里我用的是線程,可以單獨(dú)啟動(dòng)。僅供參考!第一種:要求程序定時(shí)執(zhí)行某個(gè)方法,如:沒(méi)5分鐘掃描數(shù)據(jù)庫(kù)tb_test表package com.jwht.hbgs.datatransfer;import java.io.IOException;/* * <p>Title: </p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2005</p> * <p>Company: </p> * autho

2、r ASLU * version 1.0 */public class TsMGap public TsMGap() public void go() throws IOException ThreadTimer th=new ThreadTimer(); th.start();/線程啟動(dòng) public static void main(String args) TsMGap tm = new TsMGap(); try tm.go(); catch(Exception e) e.printStackTrace(); package com.jwht.hbgs.datatransfer;imp

3、ort java.util.*;/* * <p>Title: </p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2005</p> * <p>Company: </p> * author ASLU * version 1.0 */public class ThreadTimer extends Thread public ThreadTimer() static int num=5;/分鐘 public void start() /每5

4、分鐘執(zhí)行一次定時(shí)任務(wù) RefreshItem ri = new RefreshItem(60*ThreadTimer.num); public static void main(String args) ThreadTimer tm = new ThreadTimer(); tm.start();/啟動(dòng)ThreadTimer中start()方法。 public static class RefreshItem public RefreshItem(int seconds) Timer timer = new Timer(); timer.scheduleAtFixedRate(new Refr

5、eshTask(), new Date(), seconds * 1000); class RefreshTask extends TimerTask public void run() /查詢(xún) TsManagerBean tm=new TsManagerBean(); tm.getTsTxSmsinfo(); tm.getTsTxSmsinfo2(); package com.jwht.hbgs.datatransfer;import java.sql.*;import java.util.*;import java.util.Date;import mon.*;import java.te

6、xt.*;import com.jwht.hbgs.datatransfer.*;import com.jwht.hbgs.smsoper.*;/* * <p>Title: </p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2005</p> * <p>Company: </p> * author ASLU * version 1.0 * 2013年11月14日 09:42:03改 發(fā)送后update iseend=1不刪除數(shù)據(jù) */p

7、ublic class TsManagerBean public TsManagerBean() public void getTsTxSmsinfo2() 具體實(shí)現(xiàn)方法。 第二中:要求程序在某個(gè)特定時(shí)間去執(zhí)行某項(xiàng)任務(wù),如:要求程序每天晚上23:19:10去執(zhí)行任務(wù)創(chuàng)建啟動(dòng)線程的ShanChu類(lèi)package .dingshishanchu;import java.io.IOException;public class ShanChu public ShanChu() public void go() throws IOException ShanChuTimer th=new ShanChu

8、Timer(); th.start();/線程啟動(dòng) System.out.println("啟動(dòng)定時(shí)刪除線程。"); public static void main(String args) ShanChu tm = new ShanChu(); try tm.go(); catch(Exception e) e.printStackTrace(); 創(chuàng)建定時(shí)器ShanChuTimerpackage .dingshishanchu;import java.util.*;public class ShanChuTimer extends Thread public ShanC

9、huTimer() private static final long PERIOD_DAY = 24*60*60*1000;/以毫秒為單位,24*60*60*1000是1天public void start() RefreshItem ri = new RefreshItem();public static void main(String args) ShanChuTimer tm = new ShanChuTimer();tm.start();/ 啟動(dòng)ThreadTimer中start()方法。/ 定制每天的xx:xx:xx執(zhí)行,/ 每天的date時(shí)刻執(zhí)行task, 僅執(zhí)行一次/ tim

10、er.schedule(task, date);public static class RefreshItem public RefreshItem() / timer.scheduleAtFixedRate(new RefreshTask(), new Date(),seconds */ 200); /1000毫秒=1分鐘/ 設(shè)置執(zhí)行時(shí)間Calendar calendar = Calendar.getInstance();int year = calendar.get(Calendar.YEAR);int month = calendar.get(Calendar.MONTH);int da

11、y = calendar.get(Calendar.DAY_OF_MONTH);/ 每天/這里說(shuō)明一點(diǎn),如果你啟動(dòng)任務(wù)的時(shí)間(上午10點(diǎn))晚于你設(shè)定的時(shí)間(早上8點(diǎn)),程序會(huì)立馬執(zhí)行一次,這里需要將day+1默認(rèn)推遲一天。這里我設(shè)定的時(shí)間是晚上22點(diǎn)01分18秒,所以只要我在這個(gè)時(shí)間前啟動(dòng)就ok.calendar.set(year, month, day, 22, 01, 18);/設(shè)置固定時(shí)間Date date = calendar.getTime();System.out.println("第一次執(zhí)行時(shí)間是:"+date);Timer timer = new Timer

12、();timer.schedule(new RefreshTask(), date, PERIOD_DAY);/間隔時(shí)間為PERIOD_DAY(1天)class RefreshTask extends TimerTask public void run() ShanChuBean tm = new ShanChuBean();System.out.println("執(zhí)行定時(shí)刪除進(jìn)行中。");tm.del();創(chuàng)建具體實(shí)現(xiàn)的ShanChuBean類(lèi)package .dingshishanchu;import java.io.File;import java.text.Simp

13、leDateFormat;import java.util.Date;public class ShanChuBean public ShanChuBean() public void del() SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");/ 設(shè)置日期格式String loadpath = "D:/workspace/sc" + "/dir"File file = new File(loadpath);/ 里面輸入特定目錄/ System.out.println(loadpath);/ System.out.println("file.length() "+file.length();/需要loadpath指定到文件名,輸出文件大小File temp = null;File filelist = file.listFiles();for (int i = 0; i < filelist.length; i+) temp = filelisti;if (temp.getName().endsWith("") / 獲得文件名,如果后綴為“”,這個(gè)你自己寫(xiě),就刪除文件tem

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論