Spring Batch: la Lecture d'un Fichier : si le champ est vide, la valeur par défaut

Je suis très nouveau à spring batch. J'ai exigence dans lequel je dois lire un fichier ayant un en-tête(Noms de Champ) enregistrement et les enregistrements de données

  1. je dois valider 1er enregistrement (check les noms de champ correspondant à l'encontre ensemble de noms prédéfinis)- à noter que cet enregistrement doivent être ignorés - je veux dire, ne devrait pas faire partie des éléments du processeur)
  2. lire et stocker reste des valeurs de champ d'un POJO
  3. si le champ 'date' est vide , j'ai besoin de définir la valeur par défaut comme "xxxx-yy-zz'

je suis incapable de les 1er et 3ème exigence avec le lot
voici un exemple de lecteur de XML. s'il vous plaît aider

 <bean id="reader" class="org.springframework.batch.item.file.FlatFileItemReader">
     <property name="resource" value="classpath:input/import" /> 
     <property name="encoding" value="UTF-8" />
    <property name="linesToSkip" value="1" />
    <property name="lineMapper" ref="line.mapper"/>
 </bean>

 <bean id="line.mapper" class="org.springframework.batch.item.file.mapping .DefaultLineMapper">
    <property name="lineTokenizer" ref="line.tokenizer"/>
    <property name="fieldSetMapper" ref="fieldSet.enity.mapper"/>
 </bean>

 <bean id="line.tokenizer" class="org.springframework.batch.item.file.transfo  rm.DelimitedLineTokenizer">
     <property name="delimiter">
       <util:constant static-field="org.springframework.batch.item.file.transfo rm.DelimitedLineTokenizer.DELIMITER_TAB"/>
     </property>
     <property name="names" value="id,date,age " />
     <property name="strict" value="false"/>
</bean>

  <bean id="fieldSet.enity.mapper" class="org.springframework.batch.item.file.mapping .BeanWrapperFieldSetMapper">
      <property name="targetType" value="a.b.myPOJO"/>
      <property name="customEditors">
           <map>
              <entry key="java.util.Date">
                     <bean class="org.springframework.beans.propertyeditors.C ustomDateEditor">
                           <constructor-arg>
                                <bean class="java.text.SimpleDateFormat">
                                         <constructor-arg value="yyyy-mm-dd" />
                                 </bean>
                           </constructor-arg>
                           <constructor-arg value="true" />
                     </bean>
               </entry>
          </map>
     </property>
Ce qui devrait se produire si la validation échoue sur la première ligne? Complètement ignorer le fichier?

OriginalL'auteur Tech User | 2013-03-15