附录 A.ItemReader 和 ItemWriter 的列表
A.1ItemReader
表 A.1.可用 ItemReader
Item Reader | Description |
---|---|
AbstractItemCountingItemStreamItemReader | 通过计算从ItemReader 返回的 Item 数提供基本重新启动功能的抽象 Base Class。 |
AggregateItemReader | 一个 ItemReader,将一个列表作为其 Item 传递,从注入的 ItemReader 中存储对象,直到准备好将它们打包为一个集合为止。此 ItemReader 应该使用 FieldSetMapper AggregateItemReader# BEGIN_RECORD 和 AggregateItemReader# END_RECORD 中的常量值标记记录的开始和结束。 |
AmqpItemReader | 给定一个 Spring AmqpTemplate,它提供了同步接收方法。 receiveAndConvert()方法使您可以接收 POJO 对象。 |
FlatFileItemReader | 从平面文件读取。包括 ItemStream 和 Skipable 功能。请参阅“从文件读取”部分 |
HibernateCursorItemReader | 基于 HQL 查询从游标读取。请参阅有关从数据库读取的部分 |
HibernatePagingItemReader | 从分页的 HQL 查询中读取 |
IbatisPagingItemReader | 通过 iBATIS 根据查询进行读取。通过行的页面,以便可以在不耗尽内存的情况下读取大型数据集。请参阅 HOWTO-从数据库读取。从 Spring Batch 3.0 开始不推荐使用此 ItemReader。 |
ItemReaderAdapter | 使任何类适应ItemReader 接口。 |
JdbcCursorItemReader | 通过 JDBC 从数据库游标中读取。请参阅 HOWTO-从数据库读取 |
JdbcPagingItemReader | 给定一条 SQL 语句,可以在行中进行分页,这样就可以读取大型数据集而不会耗尽内存 |
JmsItemReader | 给定一个 Spring JmsOperations 对象和一个 JMS 目标或目标名称来发送错误,它提供通过注入的 JmsOperations receive()方法接收的 Item |
JpaPagingItemReader | 给定一个 JPQL 语句,可以在各行之间进行分页,从而可以读取大型数据集而不会耗尽内存 |
ListItemReader | 提供列表中的 Item,一次提供一个 |
MongoItemReader | 给定 MongoOperations 对象和基于 JSON 的 MongoDB 查询,可以提供从 MongoOperations 查找方法接收的项 |
Neo4jItemReader | 给定 Neo4jOperations 对象和 Cyhper 查询的组件,作为 Neo4jOperations.query 方法的结果返回项 |
RepositoryItemReader | 给定一个 Spring Data PagingAndSortingRepository 对象,一个 Sort 和要执行的方法的名称,返回 Spring Data 存储库实现提供的 Item |
StoredProcedureItemReader | 从数据库游标读取,该游标是由于执行数据库存储过程而产生的。请参阅 HOWTO-从数据库读取 |
StaxEventItemReader | 通过 StAX 读取。请参阅 HOWTO-从文件读取 |
A.2ItemWriter
表 A.2.可用的 ItemWriter
Item Writer | Description |
---|---|
AbstractItemStreamItemWriter | 结合了ItemStream 和ItemWriter 接口的抽象 Base Class。 |
AmqpItemWriter | 给定一个 Spring AmqpTemplate,它提供了同步发送方法。 convertAndSend(Object)方法使您可以发送 POJO 对象。 |
CompositeItemWriter | 将 Item 传递给注入的 ItemWriter 对象的 List 列表中每个对象的处理方法 |
FlatFileItemWriter | 写入平面文件。包括 ItemStream 和 Skipable 功能。请参阅“写入文件”部分 |
GemfireItemWriter | 使用 GemfireOperations 对象,可以根据删除标志的配置从 Gemfire 实例写入或删除 Item |
HibernateItemWriter | 该 ItemWriter 是休眠会话感知的,并处理一些与事务相关的工作,这些事务是非“休眠意识”ItemWriter 不需要知道的,然后委托另一个 ItemWriter 进行实际的编写。 |
IbatisBatchItemWriter | 直接使用 iBatis API 批量写入 Item。从 Spring Batch 3.0 开始不推荐使用此 ItemWriter。 |
ItemWriterAdapter | 使任何类适应ItemWriter 接口。 |
JdbcBatchItemWriter | 使用PreparedStatement 中的批处理功能(如果有),并且可以采取基本步骤来确定flush 期间的故障。 |
JmsItemWriter | 使用 JmsOperations 对象,可通过 JmsOperations.convertAndSend()方法将 Item 写入默认队列。 |
JpaItemWriter | 此 ItemWriter 是 JPA EntityManager 感知的,并处理非“ jpa 感知” ItemWriter 不需要了解的一些与事务相关的工作,然后委托其他 Writer 进行实际编写。 |
MimeMessageItemWriter | 使用 Spring 的 JavaMailSender,类型MimeMessage 的 Item 作为邮件发送 |
MongoItemWriter | 给定一个 MongoOperations 对象,可以通过 MongoOperations.save(Object)方法写入 Item。实际写入将延迟到事务提交之前的最后一个可能 Moment。 |
Neo4jItemWriter | 给定 Neo4jOperations 对象,根据ItemWriter 的配置,Item 通过 save(Object)方法保留,或通过 delete(Object)删除 |
PropertyExtractingDelegatingItemWriter | 扩展了动态创建参数的 AbstractMethodInvokingDelegator。通过基于注入的字段名称数组从要处理的 Item 中的字段(通过 SpringBeanWrapper)中检索值来创建参数 |
RepositoryItemWriter | 给定一个 Spring Data CrudRepository 实现,通过配置中指定的方法保存 Item。 |
StaxEventItemWriter | 使用 ObjectToXmlSerializer 实现将每个 Item 转换为 XML,然后使用 StAX 将其写入 XML 文件。 |