题目阅读器和写入实现
在本节中,我们将向你介绍那些还未接触过的读者和作家 前文已讨论。
装饰
在某些情况下,你可能需要在已有的行为基础上附加专门的行为物品阅读器或物品写手实现。
为此,春批提供以下开箱即用的装饰设计师:
同步项目流阅读器
当使用物品阅读器不安全,Spring Batch 提供同步项目流阅读器装饰器,可以用来制作物品阅读器安全。春季批次提供了同步项目流读者构建器构造
一个实例同步项目流阅读器.
例如,FlatFileItemReader不安全线程,不能使用
一个多线程步骤。该读物器可装饰为同步项目流阅读器以便在多线程步骤中安全使用。这里有一个装饰的示例
这样的读者:
@Bean
public SynchronizedItemStreamReader<Person> itemReader() {
FlatFileItemReader<Person> flatFileItemReader = new FlatFileItemReaderBuilder<Person>()
// set reader properties
.build();
return new SynchronizedItemStreamReaderBuilder<Person>()
.delegate(flatFileItemReader)
.build();
}
单件可窥视物品阅读器
春季批次包含一个装饰器,可以为物品阅读器.这张照片
方法让用户能够提前查看一个项目。多次呼叫窥视,结果都一样
该项目,这是下一个从该项目返回的读方法。春季批次提供了单件物品可窥视物品阅读器构建器构造一个单件可窥视物品阅读器.
| SingleItemPeekableItemReader的窥视方法不安全,因为它不会 可以在多个帖子中确认“窥视”。只有一根线索露出来 下一次通话时会让该项目阅读。 |
同步项目流写手
当使用物品写手不安全,Spring Batch 提供同步项目流写手装饰器,可以用来制作物品写手安全。春季批次提供了同步项目流写作者构建器构造
一个实例同步项目流写手.
例如,平板文件物品写手不安全线程,不能使用
一个多线程步骤。这位作者可以被装饰为同步项目流写手以便在多线程步骤中安全使用。这里有一个装饰的示例
这样的作家:
@Bean
public SynchronizedItemStreamWriter<Person> itemWriter() {
FlatFileItemWriter<Person> flatFileItemWriter = new FlatFileItemWriterBuilder<Person>()
// set writer properties
.build();
return new SynchronizedItemStreamWriterBuilder<Person>()
.delegate(flatFileItemWriter)
.build();
}
多资源物品写手
这多资源物品写手包裹 a资源意识项目写作者项目流并创造了新的
当当前资源中写入的项目数量超过itemCountLimitPerResource.春季批次提供了多资源物品编写者自
构造一个多资源物品写手.
向读者和作者传递信息
Spring Batch 为常用消息系统提供以下读写器:
AmqpItemReader
这AmqpItemReader是物品阅读器该系统使用Amqp模板接收或转换
交换消息。春季批次提供了AmqpItemReaderBuilder构造
一个实例AmqpItemReader.
AmqpItemWriter
这AmqpItemWriter是物品写手该系统使用Amqp模板发送消息
AMQP交易所。如果名称未在
提供的Amqp模板.春季批次提供了AmqpItemWriterBuilder自
构造一个AmqpItemWriter.
JmsItemReader
这JmsItemReader是物品阅读器对于使用Jms模板.模板
应有默认目的地,用于提供read()方法。春季批次提供了JmsItemReaderBuilder构造一个JmsItemReader.
JmsItemWriter
这JmsItemWriter是物品写手对于使用Jms模板.模板
应该有一个默认的目的地,用于发送物品write(列表).Spring
批处理提供JmsItemWriterBuilder构造一个JmsItemWriter.
数据库读取器
数据库编译员
Spring Batch 提供以下数据库编入服务:
MongoItemWriter
这MongoItemWriter是物品写手写入 MongoDB 存储的实现
使用 Spring Data 的实现蒙古行动.春季批次提供了MongoItemWriterBuilder构造一个MongoItemWriter.
RepositoryItemWriter
这RepositoryItemWriter是物品写手包裹器为原油仓库来自Spring
数据。春季批次提供了RepositoryItemWriterBuilder构造一个 的实例
这RepositoryItemWriter.