배치 XML에서 생성된 파일을 FTP로 보내는 방법 문의
- 작성자 :
- 안*관
- 작성일 :
- 2014-03-06 16:24:33
- 조회수 :
- 999
- 구분 :
- 개발환경
- 진행상태 :
- 완료
Q
안녕하세요
배치개발중인데요
배치에서 파일까지 생성했는데, 이 파일을 특정 폴더가 아니라 FTP로 보내고 싶은데요. xml상에서 구현이 되는건가요?
아래 배치XML 첨부합니다
<job id="BATCH_AD_ANALS" parent="eGovBaseJob"
xmlns="http://www.springframework.org/schema/batch">
<step id="BATCH_AD_ANALS_Step" parent="eGovBaseStep">
<tasklet>
<chunk
reader="BATCH_AD_ANALS_Step.delimitedItemReader"
processor="BATCH_AD_ANALS_Step.itemProcessor"
writer="BATCH_AD_ANALS_Step.delimitedItemWriter"
commit-interval="2" />
</tasklet>
</step>
</job>
<bean
id="BATCH_AD_ANALS_Step.delimitedItemReader"
class="org.springframework.batch.item.file.FlatFileItemReader" scope="step">
<property name="resource" value="#{jobParameters[inputFile]}" />
<property name="lineMapper">
<중략>
</property>
</bean>
</property>
</bean>
<bean id="BATCH_AD_ANALS_Step.delimitedItemWriter"
class="org.springframework.batch.item.file.FlatFileItemWriter" scope="step">
###########이부분에서 파일로 생성이 됩니다. 파일을 FTP경로에 생성하고 싶습니다~
<property name="resource" value="file:C:/projects/workspace/egovFrameWork_BOPR/target/test-outputs/sppouserOutput.txt" />
<property name="lineAggregator">
<bean
class="org.springframework.batch.item.file.transform.DelimitedLineAggregator">
<property name="delimiter" value="|" />
<property name="fieldExtractor">
<bean
class="egovframework.rte.bat.core.item.file.transform.EgovFieldExtractor">
<property name="names" value="empId,ihidnum2,empNm,psitnInsttCode,deptNm,adData " />
</bean>
</property>
</bean>
</property>
</bean>
<bean id="BATCH_AD_ANALS_Step.itemProcessor"
class="egovframework.bat.AdBatchProcessor" />
배치개발중인데요
배치에서 파일까지 생성했는데, 이 파일을 특정 폴더가 아니라 FTP로 보내고 싶은데요. xml상에서 구현이 되는건가요?
아래 배치XML 첨부합니다
<job id="BATCH_AD_ANALS" parent="eGovBaseJob"
xmlns="http://www.springframework.org/schema/batch">
<step id="BATCH_AD_ANALS_Step" parent="eGovBaseStep">
<tasklet>
<chunk
reader="BATCH_AD_ANALS_Step.delimitedItemReader"
processor="BATCH_AD_ANALS_Step.itemProcessor"
writer="BATCH_AD_ANALS_Step.delimitedItemWriter"
commit-interval="2" />
</tasklet>
</step>
</job>
<bean
id="BATCH_AD_ANALS_Step.delimitedItemReader"
class="org.springframework.batch.item.file.FlatFileItemReader" scope="step">
<property name="resource" value="#{jobParameters[inputFile]}" />
<property name="lineMapper">
<중략>
</property>
</bean>
</property>
</bean>
<bean id="BATCH_AD_ANALS_Step.delimitedItemWriter"
class="org.springframework.batch.item.file.FlatFileItemWriter" scope="step">
###########이부분에서 파일로 생성이 됩니다. 파일을 FTP경로에 생성하고 싶습니다~
<property name="resource" value="file:C:/projects/workspace/egovFrameWork_BOPR/target/test-outputs/sppouserOutput.txt" />
<property name="lineAggregator">
<bean
class="org.springframework.batch.item.file.transform.DelimitedLineAggregator">
<property name="delimiter" value="|" />
<property name="fieldExtractor">
<bean
class="egovframework.rte.bat.core.item.file.transform.EgovFieldExtractor">
<property name="names" value="empId,ihidnum2,empNm,psitnInsttCode,deptNm,adData " />
</bean>
</property>
</bean>
</property>
</bean>
<bean id="BATCH_AD_ANALS_Step.itemProcessor"
class="egovframework.bat.AdBatchProcessor" />
A
안녕하세요. 안희관님
Spring Batch 문서에서는 Spring Integration을 사용하도록 가이드되어 있으나..
간단하게 ftp를 처리하는 tasklet을 만드셔도 되실 것 같습니다.
참조하실 블러그는 다음과 같습니다.
https://coreyreil.wordpress.com/2012/12/21/spring-batch-creating-an-ftp-tasklet-to-get-remote-files/
고맙습니다.
Spring Batch 문서에서는 Spring Integration을 사용하도록 가이드되어 있으나..
간단하게 ftp를 처리하는 tasklet을 만드셔도 되실 것 같습니다.
참조하실 블러그는 다음과 같습니다.
https://coreyreil.wordpress.com/2012/12/21/spring-batch-creating-an-ftp-tasklet-to-get-remote-files/
고맙습니다.