요르딩딩

context-scheduler.xml 본문

[Spring Doc]/[context-*.xml]

context-scheduler.xml

요르딩딩 2021. 9. 15. 14:30
728x90
반응형
<context:component-scan base-package="com.schedule">
   <context:include-filter type="annotation" expression="org.springframework.stereotype.Service"/>
   <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>

 

1. 동작 시키고자 하는 클래스

<bean id="AAABatch" class="org.springframework.scheduling.quartz.JobDetailFactoryBean" p:durability="true">
   <property name="jobClass" value="com.schedule.AAASchedule" />
   <property name="applicationContextJobDataKey" value="applicationContext"/>
   <property name="jobDataAsMap">
      <map>
         <entry key="BBBService" value-ref="BBBService" />
         <entry key="BBBproperties" value-ref="BBBproperties" />

 

2. 반복 작업 상세 정의 트리거 : 배치를 실행시켜라 

<bean id="AAABatchTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
   <property name="jobDetail" ref="AAABatch"/>
   
   <!-- CronTab : 실행 주기 설정. (Cron : 리눅스 스케줄러. 주기마다 수행) -->
   <!-- (초, 분, 시, 일, 월) -->
    <property name="cronExpression" value="0 0 5 * * ? *"/>

3. 트리거 등록

<!-- 앞에서 설정한 트리거를 등록합니다. 필요하면 여러개 만들어서 등록하면 됩니다. -->
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
   <property name="triggers">
      <list>
          <ref bean="AAABatchTrigger"/>

 

4. Quartz 실행시 설정값 세팅 

<property name="quartzProperties">
   <props>
       <prop key="org.quartz.threadPool.class">org.quartz.simpl.SimpleThreadPool</prop>
       <!-- Thread 수 -->
	   <prop key="org.quartz.threadPool.threadCount">1</prop>

       <!-- Thread 동작 우선순위 -->
       <prop key="org.quartz.threadPool.threadPriority">5</prop>
       
       <!-- 쓰레드 관리 방식 (RAM) -->
       <prop key="org.quartz.jobStore.class">org.quartz.simpl.RAMJobStore</prop>
       
       !-- 동작하지 않을 때 대기할 시간 (ms) 60초 지나도 동작하지 않을 경우 Batch Job 실행되지 않는다. -->
       <prop key="org.quartz.jobStore.misfireThreshold">60000</prop>
728x90
반응형

'[Spring Doc] > [context-*.xml]' 카테고리의 다른 글

context-transaction.xml  (0) 2021.09.15
context-mapper.xml  (0) 2021.09.15
context-datasource.xml  (0) 2021.09.15
Comments