Spring batch 如何在ItemProcessor中跳过/删除项目?

Spring batch 如何在ItemProcessor中跳过/删除项目?,spring-batch,Spring Batch,我希望能够删除一个项目,同时处理它,如果它符合一个特定的逻辑。例如,如果该项不包含我要查找的值,我不希望将该项写入文件 我目前使用的类实现了ItemProcessor 我只是返回null吗?从处理器返回null,如下所示 public class ExceptionRecordValidator implements ItemProcessor<yourDTO, yourDTO>{ @Override public yourDTO process(

我希望能够删除一个项目,同时处理它,如果它符合一个特定的逻辑。例如,如果该项不包含我要查找的值,我不希望将该项写入文件

我目前使用的类实现了
ItemProcessor


我只是返回null吗?

从处理器返回null,如下所示

public class ExceptionRecordValidator implements 
        ItemProcessor<yourDTO, yourDTO>{
@Override
public yourDTO process(
        yourDTOitem) throws Exception {
     if(your requested value found){
         return yourDTO ;
     }else{
         return null;
     }
  }
}
公共类例外RecordValidator实现
项目处理器{
@凌驾
公开您的DTO进程(
yourDTOitem)引发异常{
如果(找到您请求的值){
将您的数据返回到;
}否则{
返回null;
}
}
}

那么这会导致任何地方出现空指针吗?好的,通常不会。空指针只是指示编写器不要编写。更好的设计是在您的模型上实现验证器;如果验证失败,记录将被跳过,不再进行进一步处理。@Barun我只知道在处理项目时是否需要跳过该项目。根据我对
ValidatingItemProcessor
的理解,它只会检查项目,如果需要跳过,则会引发异常,处理器会知道应该跳过该项目。在我处理一个项目时,是否还有其他的东西进行验证?