Spring 중 Quartz 사용

Quartz Task 클래스;
import java.util.Date;

public class QuartzTask {
	public void execute() throws Throwable {
		Date now = new Date();
		System.out.println(now);
	}
}

 
   quartz. xml 파일:
 
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
	<!--     -->
	<bean id="QuartzTask" class="QuartzTask" />

	<!--          -->
	<bean id="MethodInvokingJobDetailFactoryBean"
		class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<property name="targetObject">
			<ref bean="QuartzTask" />
		</property>
		<property name="targetMethod">
			<value>execute</value>
		</property>
	</bean>

	<!--        -->
	<bean id="CronTriggerBean"
		class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail">
			<ref bean="MethodInvokingJobDetailFactoryBean" />
		</property>
		<property name="cronExpression">
			<value>0/1 * * * * ?</value>
		</property>
	</bean>

	<!--      -->
	<bean id="SchedulerFactoryBean"
		class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
		<property name="triggers">
			<list>
				<ref bean="CronTriggerBean" />
			</list>
		</property>
	</bean>
</beans>
 

 

Test :

import org.springframework.context.support.ClassPathXmlApplicationContext;

public class Test {
	public static void main(String[] args) throws Exception {

		new ClassPathXmlApplicationContext("tarena/quartz.xml");


	}
}

 
  매개 변수 설명:
 
  0 0 10,14,16 * * ?      매일 오전 10 시, 오후 2 시, 4 시 0 분 / 30 9 - 17 *?       아침 9 시 5 분 근무 시간 30 분 마다 자정 12? *WED       수요일 낮 12 시      매일 낮 12 시 에 0, 15, 10 을 촉발 합 니까? *      매일 오전 10: 15 촉발 0, 15, 10 *?      매일 오전 10: 15 촉발 0, 15, 10 *? *     매일 오전 10: 15 촉발 0, 15, 10 *?2008    2008 년 의 매일 오전 10: 15 촉발 0 * 14 *?      매일 오후 2 시 부터 오후 2 시 59 분 까지 1 분 마다 0 / 5 14 * 를 촉발 합 니까?      매일 오후 2 시 부터 오후 2 시 55 분 까지 5 분 마다 0 / 5 14, 18 *?     매일 오후 2 시 부터 2 시 55 분 사이 와 오후 6 시 부터 6 시 55 분 사이 에 5 분 마다 0 - 5, 14 * 를 촉발 합 니까?      매일 오후 2 시 부터 오후 2 시 까지 1 분 마다 0, 10, 44 14?3 WED    매년 3 월 수요일 오후 2: 10 과 2: 44 촉발 0, 15, 10? *MON-FRI   월요일 부터 금요일 오전 10: 15 촉발 0, 15, 10, 15 *?      매월 15 일 오전 10: 15 촉발 0 15 10 L *?        매월 마지막 날 오전 10: 15 촉발 0, 15, 10? *6L       매월 마지막 금요일 오전 10: 15 촉발 0, 15, 10? *6L 2004-2008    2004 년 부터 2008 년 까지 매월 마지막 금요일 오전 10: 15 촉발 0, 15, 10? *6#3     매월 셋째 주 금요일 오전 10: 15 촉발 0 / 1 * * *?    1 초 에 한 번 씩 0 / 1 * *?    분당 한 번 씩 0 0 0 / 1 *?    시간 당 한 번 씩 해 발 됩 니 다.
 
 
트리거 는 일련의 특수 문 자 를 이용 하여 다음 과 같다.
역 사선 (/) 문 자 는 증 량 값 을 표시 합 니 다.예 를 들 어 초 필드 에서 '5 / 15' 는 5 초부 터 15 초 에 한 번 씩 시작 하 는 것 을 의미한다.물음표 (?) 문자 와 알파벳 L 문 자 는 월 내 날짜 와 주 내 날짜 필드 에서 만 사용 할 수 있 습 니 다.물음 표 는 이 필드 에 구체 적 인 값 이 포함 되 어 있 지 않다 는 것 을 나타 낸다.따라서 월 내 날 짜 를 지정 하면 주 내 날짜 필드 에 '?' 를 삽입 하여 주 내 날짜 값 이 중요 하지 않다 는 것 을 나타 낸다.알파벳 L 문 자 는 last 의 줄 임 말이다.월 내 날짜 필드 에 놓 으 면 그 달 마지막 날 에 실 행 될 예정 임 을 나타 낸다.주 내 날짜 필드 에 'L' 이 따로 존재 하면 '7' 과 같 습 니 다. 그렇지 않 으 면 그 달 내 주 내 날짜 의 마지막 인 스 턴 스 를 대표 합 니 다.그래서 '0L' 는 그 달 마지막 일요일 에 실 행 될 예정 이 라 고 밝 혔 다.월 내 날짜 필드 에 있 는 알파벳 (W) 문 자 는 지정 한 값 에 가장 가 까 운 근무일 에 실 행 됩 니 다.'1W' 를 월 내 날짜 필드 에 넣 고 그 달의 첫 근무일 내 에 실행 을 배정 하 겠 다 고 밝 혔 다.우물 번호 (\ #) 문 자 는 주어진 달 에 구체 적 인 근무일 인 스 턴 스 를 지정 합 니 다.'MON \ # 2' 를 주 내 날짜 필드 에 넣 고 그 달 둘째 월요일 에 임 무 를 배정 하 겠 다 고 밝 혔 다.별표 (*) 문 자 는 연결 문자 로 이 필드 가 가능 한 모든 값 을 받 아들 일 수 있 음 을 나타 낸다.

좋은 웹페이지 즐겨찾기