我想添加一个新的台阶,以我的春节,批处理作业,这将创建一个XLS文件。我有一个将输出到一个名为CLUCReportDTO豆读者。我工作的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导致此错误的设置丢失。
谢谢
根据您的配置(.<CLUCReportDTO, String> chunk(100)
),该项目的作家应该写入型String
的项目,但你宣布它来写类型CLUCReportDTO
(public class ACH2WriteProcessor implements ItemWriter<CLUCReportDTO>
)的项目。
你的项目的作者应该声明如下:
public class ACH2WriteProcessor implements ItemWriter<String>{
@Override
public void write(List<? extends String> items) throws Exception {
}
}