'Schedule'에 해당되는 글 1건

  1. 2008.05.24 [JAVA] Timer를 이용하여 일정시간에 작업수행하기(Schedule) (5)
 

일주일에 한번, 하루에 한번 작업을 수행하는 프로세스를 실행하고 싶을 때가 있을 껍니다.
한가한 시간에 자동으로 배치작업을 실행하는 등의 작업을 자바에서 수행할 수 있습니다.
Timer라는 클래스에다가 시작날짜, 시간을 설정한 뒤, TimerTask클래스를 상속받은 클래스에서 run메소드를 구현하게 되면 설정된 시간에 run메소드가 자동으로 수행되게 됩니다.

코드를 보도록 합시다.

[code]
package com.mudchobo.scheduler;

import java.util.TimerTask;

public class WeeklySearch extends TimerTask {

 @Override
 public void run() {
  System.out.println("WeeklySearch!");
 }
}
[/code]
TimerTask를 상속받아서 run메소드를 구현했습니다. run메소드는 간단히 WeeklySearch라고 보여주는군요.

그럼 메인을 보도록 합시다.
[code]
package com.mudchobo.scheduler;

import java.util.Calendar;
import java.util.Timer;

public class Scheduler {

 public static void main(String[] args) {
  WeeklySearch weeklySearch = new WeeklySearch();
 
  Timer timer = new Timer();
  Calendar date = Calendar.getInstance();
  date.set(Calendar.DAY_OF_WEEK, Calendar.SATURDAY);
  date.set(Calendar.AM_PM, Calendar.PM);
  date.set(Calendar.HOUR, 11);
  date.set(Calendar.MINUTE, 29);
  date.set(Calendar.SECOND, 0);
  date.set(Calendar.MILLISECOND, 0);
 
  timer.scheduleAtFixedRate(weeklySearch, date.getTime(),
    1000 * 60 * 60 * 24 * 7);
 }
}
[/code]
Timer객체, Calendar객체를 선언합니다. Calendar객체에는 이 스케쥴이 시작될 시간을 설정해서 넣습니다. 그 뒤에 timer에 있는 scheduleAtFixedRate메소드에 첫번째 인자는 맨 위에서 생성한 TimerTask객체를 넣으면 되구요. 두번째는 이 스케쥴이 시작될 시간을 설정해서 넣으면 되구요. 3번째는 얼마만큼의 주기로 실행될 지 기간을 설정하게 됩니다.
밀리초여서 1000밀리초 * 60초 * 60분 * 24시간 * 7일 하게 되면 저것은 1주일에 한번 실행되게 됩니다.

이상입니다!

 
Posted by 머드초보

댓글을 달아 주세요

  1. BlogIcon 시난 2008.06.19 18:25  댓글주소  수정/삭제  댓글쓰기

    quartz 스케쥴링을 이용해보세요!

    • 머드초보 2008.06.22 20:27  댓글주소  수정/삭제

      앗 시난님^^ 반가워요 ^^ 제 블로그를 방문해주셔서 감사해요^^
      quartz도 한번 써봐야겠네요 ^^
      좋은 정보 감사해요~ ^^

  2. BlogIcon moncler online 2013.01.05 20:09  댓글주소  수정/삭제  댓글쓰기

    Le nombre de morts causées par le tabac pourrait tripler d'ici 2030 en Chine si des mesures draconiennes ne sont pas prises, http://www.moncleroutletespain.com/ moncler chaquetas, a mis en garde un rapport réalisé conjointement par des experts chinois et étrangers, http://www.moncleroutletespain.com/ moncler. Sciences nouveau report du lancement de Discovery Actu en continu Wallonie : alerte aux crues et aux inondationsRelated articles:


    http://englpocket.tistory.com/24 http://englpocket.tistory.com/24

    http://yentownband.com/category/MotorcycleDiaries/Vietnam?page=3 http://yentownband.com/category/MotorcycleDiaries/Vietnam?page=3