Please Enable JavaScript!
Gon[ Enable JavaScript ]

간단하게 spring batch 를 만들어 스케줄 프로그램하기

자바(JAVA)
반응형

참고 사이트는

사용자 삽입 이미지
http://static.springframework.org/spring-batch/  주요 jar 파일들 목록이다 .
위의 사이트에서 다운로드 받고 압축을 풀면
spring.jar, quartz.jar, spring-batch-core.jar, spring-batch-infrastructure.jar 있는데 복사해서 넣는다.

배치를 돌릴 클래스를 만든다. QuartzJobBean 을 상속받아서 만드는데 executeInternal 함수가
실행되므로 구현을 해야된다.

public class BatchTestTwo extends QuartzJobBean {
 
   private Logger log = Logger.getLogger(this.getClass());
 
   protected void executeInternal(JobExecutionContext arg0) throws JobExecutionException {
       log.debug("<<<<<<<<<<< second bath start >>>>>>>>>");
   }
}

xml 설정인데 바로 아래 예제는 두개의 클래스를 돌리는 예제이다. 아래와 같이 한다면 여러개도
쉽게 시간설정을 해서 돌릴수 있을것이다.

<bean id="batchTestOne" class="org.springframework.scheduling.quartz.JobDetailBean">
  <property name="jobClass" value="batch.BatchTestOne" />
 </bean>
 
 <bean id="batchTestOneTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
  <property name="jobDetail" ref="batchTestOne" />
  <property name="startDelay" value="10000" />
  <property name="repeatInterval" value="50000" />
 </bean>
 
 <bean id="batchTestTwo" class="org.springframework.scheduling.quartz.JobDetailBean">
  <property name="jobClass" value="batch.BatchTestTwo" />
 </bean>
 
 <bean id="batchTestTwoTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
  <property name="jobDetail" ref="batchTestTwo" />
  <property name="startDelay" value="10000" />
  <property name="repeatInterval" value="50000" />
 </bean>
 
 <bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
  <property name="triggers">
   <list>
    <ref bean="batchTestOneTrigger"/>
    <ref bean="batchTestTwoTrigger"/>
   </list>
  </property>
 </bean>

반응형
Posted by 녹두장군1
,