quartz 2 입문 spring 통합 설정

의존 하 는 jar 패키지
    quartz-2.2.1.jar
    quartz-jobs-2.2.1.jar
    c3p0 - 0.9.1. jar (데이터 베 이 스 를 통 해 정시 작업 을 저장 할 때 필요 합 니 다)
    slf4j - api - 1.7.2. jar (로그 관련)
    maven 설정
 
<dependency>  
    <groupId>org.quartz-scheduler</groupId>  
    <artifactId>quartz</artifactId>  
    <version>2.2.1</version>  
</dependency>
<dependency>  
    <groupId>org.quartz-scheduler</groupId>  
    <artifactId>quartz-jobs</artifactId>  
    <version>2.2.1</version>  
</dependency>

XML 설정
 
   새 파일 spring - context - quartz. xml 을 만 들 고 spring 프로필 에 파일 을 추가 합 니 다:
<import resource="spring-context-quartz.xml"/> 

    spring - context - quartz. xml 는 주로 세 부분 으로 구성 되 어 있 습 니 다.
    JobDetail: MethodInvoking JobDetail Factory Bean 을 사 용 했 습 니 다. Job 인터페이스, 일반적인 자바 빈 을 실현 할 필요 가 없습니다.
    Trigger: 여 기 는 CronTrigger 를 사 용 했 습 니 다. 시간 표현 식 을 통 해 임 무 를 수행 합 니 다. 매우 유연 합 니 다. 여 기 는 더 이상 소개 하지 않 겠 습 니 다.
    Scheduler: 스케줄 러, Trigger 설정 시점 에 따라 JobDetail 설정 을 실행 하 는 방법
 
<!--     schema   -->
<!-- job      -->
<bean id="jobDetail1" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
    <property name="targetObject">
        <ref bean="myJob" />
    </property>
    <property name="targetMethod">
        <value>checkJob1</value>
    </property>
</bean>
<bean id="jobDetail2" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> 
    <property name="targetObject">
        <ref bean="myJob" />
    </property>
    <property name="targetMethod">
        <value>checkJob2</value>
    </property>
</bean>
<!-- job      -->
	
<!--            -->
<bean id="jobTrigger1" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
    <property name="jobDetail">
        <ref bean="jobDetail1" />
    </property>
    <property name="cronExpression">
        <!--     2    -->  
        <value>0 0 2 * * ?</value>
    </property>
</bean>
<bean id="jobTrigger2" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
    <property name="jobDetail">
        <ref bean="jobDetail2" />
    </property>
    <property name="cronExpression">
        <!--   1       -->  
        <value>0 0 0/1 * * ?</value>
    </property>
</bean>
<!--           -->
	
<!--         -->
<bean autowire="no" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
    <property name="triggers">
        <list>
	    <ref bean="jobTrigger1" />
	    <ref bean="jobTrigger2"/>
	</list>
    </property>
</bean>
<!--         --> 

자바 클래스
    두 번 째 단 계 는 MethodInvoking JobDetail Factory Bean 을 사용 하여 JobDetail 을 설정 합 니 다. 따라서 자바 류 는 Job 인터페이스의 execute 방법 을 더 이상 실현 하지 않 아 도 됩 니 다. 일반적인 자바 bean 이면 됩 니 다.
 
@Component("myJob")
public class MyJob {

	public void checkJob1(){
		//TODO 
	}
	
	public void checkJob2(){
		//TODO
	}
}

    quartz - 2.2.1 관련 jar 패 키 지 를 첨부 하여 다운로드 하거나 quartz 홈 페이지 에서 다른 버 전 을 다운로드 합 니 다.
    http://www.quartz-scheduler.org/downloads
 
    다음 편 에 서 는 quartz 2 의 가장 간단 한 사용 을 소개 합 니 다.
 

좋은 웹페이지 즐겨찾기