我正在尝试在我的Spring Batch作业中添加一个新步骤,该步骤将创建XLS文件。我有一个阅读器,将输出放入名为CLUCReportDTO的bean中。我正在研究itemWriter的蓝图以创建CSV文件。这是代码
在A8SPACH2类内部
@Autowired
private ACH2WriteProcessor clucWriter;
public Step jobStep020() {
return stepBuilderFactory.get(JOB.ACH2_BATCH_LOAD.getProfileName() +
".js020")
.listener(promotionListener)
.<CLUCReportDTO, String> chunk(100)
.reader(lockboxWirePostService.getUnappliedJes())
.writer(clucWriter)
.listener(listener)
.build();
}
在ACH2WriteProcessor类内部
public class ACH2WriteProcessor implements ItemWriter<CLUCReportDTO>{
@Override
public void write(List<? extends CLUCReportDTO> items) throws Exception
{
}
}
我在A8SPACH2中遇到以下错误:无法转换为ItemWriter <?超级字符串> 。在导致此错误的A8SPACH2或ACH2WriteProcessor的安装程序中我缺少什么?
谢谢
答案 0 :(得分:1)
根据您的配置(.<CLUCReportDTO, String> chunk(100)
,该项目编写器应写入String
类型的项目,但是您要声明它写入CLUCReportDTO
类型的项目({{1 }}。
您的项目作家应这样声明:
public class ACH2WriteProcessor implements ItemWriter<CLUCReportDTO>