在 spring 批次中合并 CompositeItemProcessor 和 CompositeItemWriter
combine CompositeItemProcessor and CompositeItemWriter in spring batch
我有一个遵循以下步骤的场景:
1。 reader 将从 table A 中获取列表 A。
2。处理器处理列表 A 到 return 对象 A 和 MimeMessage。
3。作者将对象A写入tableB,使用MimeMessage发送邮件
我可以在上面的场景中使用 CompositeItemProcessor 和 CompositeItemWriter 吗?如果是,我如何在步骤配置中设置输出对象以及如何定义用于发送邮件的 ItemWriter 将采用 MimeMessage 和用于插入数据库的 ItemWriter 将采用对象 A.
我的问题有更好的解决方案吗?
how to define which ItemWriter for send mail will take MimeMessage or ItemWriter for insert database will take object A.
您可以使用 ClassifierCompositeItemWriter。此复合编写器使用 Classifier
对项目进行分类(在您的情况下为类型 A 或 MimeMessage)并为每种类型调用一个委托编写器。
我有一个遵循以下步骤的场景:
1。 reader 将从 table A 中获取列表 A。
2。处理器处理列表 A 到 return 对象 A 和 MimeMessage。
3。作者将对象A写入tableB,使用MimeMessage发送邮件
我可以在上面的场景中使用 CompositeItemProcessor 和 CompositeItemWriter 吗?如果是,我如何在步骤配置中设置输出对象以及如何定义用于发送邮件的 ItemWriter 将采用 MimeMessage 和用于插入数据库的 ItemWriter 将采用对象 A.
我的问题有更好的解决方案吗?
how to define which ItemWriter for send mail will take MimeMessage or ItemWriter for insert database will take object A.
您可以使用 ClassifierCompositeItemWriter。此复合编写器使用 Classifier
对项目进行分类(在您的情况下为类型 A 或 MimeMessage)并为每种类型调用一个委托编写器。