2016-12-07 13 views
2

Я использую Spring Batch 2. version.I создал файл csv и смог сохранить в формате csv на локальном.Spring Batch :: Как сгенерировать файл на sftp-сервере с помощью Spring Batch?

Теперь я хочу сгенерировать тот же файл, но он будет храниться на сервере SFTP.

Я прошел через некоторый учебник, который генерирует файл на сервере sftp, но они используют интеграцию Spring с Spring Batch.

Возможно ли создать файл на сервере SFTP с использованием Spring Batch?

Ниже определяется itemReader боб ::

<bean id="itemReader" 
     class="org.springframework.batch.item.database.JdbcCursorItemReader" 
     scope="step"> 
     <property name="dataSource" ref="dataSource" /> 
     <property name="sql" 
      value="select u.ID, u.USER_LOGIN, u.PASSWORD, u.AGE from USERS u" /> 
     </property> 
     <property name="rowMapper"> 
      <bean class="com.example.UserRowMapper" /> 
     </property> 
    </bean> 

ItemWriter Bean ::

<bean id="flatFileItemWriter" class="org.springframework.batch.item.file.FlatFileItemWriter"> 
     <property name="resource" value="file:csv/user.csv" /> 

     <property name="appendAllowed" value="true" /> 
     <property name="lineAggregator"> 
      <bean   class="org.springframework.batch.item.file.transform.DelimitedLineAggregator"> 
       <property name="delimiter" value="," /> 
       <property name="fieldExtractor"> 
        <bean 
         class="org.springframework.batch.item.file.transform.BeanWrapperFieldExtractor"> 
         <property name="names" value="name,age,id,password"/> 
         </bean> 
     </property> 
    </bean> 
+0

Я бы рекомендовал хранить файл локально затем реализовать который копирует файл на FTP-сервер с помощью библиотеки ch.ethz.ssh2SFTPv3Client. –

+0

Благодарим вас за предложение. Но я не хочу писать новый код или тасклет. Я ищу встроенную функциональность весенней партии, которая пишет файл на сервере SFTP. – Vaibs

+2

Это не так. Также я сомневаюсь в том, что это разумно делать из-за проблем с нестабильностью, а также задержка и, следовательно, проблемы с производительностью (вы не хотите, чтобы ваша работа приостанавливалась всякий раз, когда он ожидает, что ftp-сервер будет готов к приему данных). Более того, часто у вас есть система управления заданиями, которая заботится о копировании файлов из одного места в другое, оставляя работу springbatch только с ответственностью за создание файла и его локальное хранение. Конечно, это зависит от обстоятельств. Но, как правило, я считаю, что лучше не иметь писателя, который пишет непосредственно на FTP-сервер. –

ответ

0

Вы должны настроить ваш класс писатель