On this page
附录 A:ItemReader 和 ItemWriters 的列表
A.1.itemReader
表 1.可用 ItemReader
Item Reader | Description |
---|---|
AbstractItemCountingItemStreamItemReader | 通过计算从ItemReader 返回的 Item 数提供基本重新启动功能的抽象 Base Class。 |
AggregateItemReader | 一个ItemReader 作为其 Item 传递列表,存储注入的ItemReader 中的对象,直到准备好将它们打包为一个集合为止。此类必须用作可标识记录边界的自定义ItemReader 的包装。定制 Reader 应通过返回AggregateItem 来标记记录的开头和结尾,该AggregateItem 对其查询方法isHeader() 和isFooter() 做出响应true 。请注意,该 Reader 不是 Spring Batch 提供的 Reader 库的一部分,而是作为spring-batch-samples 中的示例给出的。 |
AmqpItemReader | 给定 Spring AmqpTemplate ,它提供了同步接收方法。 receiveAndConvert() 方法可让您接收 POJO 对象。 |
FlatFileItemReader | 从平面文件读取。包括ItemStream 和Skippable 功能。参见FlatFileItemReader。 |
HibernateCursorItemReader | 基于 HQL 查询从游标读取。参见Cursor-based ItemReaders。 |
HibernatePagingItemReader | 从分页的 HQL 查询中读取 |
ItemReaderAdapter | 使任何类适应ItemReader 接口。 |
JdbcCursorItemReader | 通过 JDBC 从数据库游标中读取。参见Cursor-based ItemReaders。 |
JdbcPagingItemReader | 给定一条 SQL 语句,可以在行中进行分页,从而可以读取大型数据集而不会耗尽内存。 |
JmsItemReader | 给定 Spring JmsOperations 对象和向其发送错误的 JMS 目标或目标名称,将提供通过注入的JmsOperations#receive() 方法接收的 Item。 |
JpaPagingItemReader | 给定一个 JPQL 语句,可以在行中进行分页,这样就可以读取大型数据集而不会耗尽内存。 |
ListItemReader | 一次提供一个列表中的 Item。 |
MongoItemReader | 给定一个MongoOperations 对象和一个基于 JSON 的 MongoDB 查询,它提供了从MongoOperations#find() 方法接收的 Item。 |
Neo4jItemReader | 给定一个Neo4jOperations 对象和 Cyhper 查询的组件,则作为 Neo4jOperations.query 方法的结果返回项。 |
RepositoryItemReader | 给定一个 Spring Data PagingAndSortingRepository 对象,一个Sort 以及要执行的方法的名称,将返回 Spring Data 存储库实现提供的 Item。 |
StoredProcedureItemReader | 从数据库游标读取,该游标是由于执行数据库存储过程而产生的。见StoredProcedureItemReader |
StaxEventItemReader | 通过 StAX 读取。参见StaxEventItemReader。 |
JsonItemReader | 从 Json 文档中读取 Item。参见JsonItemReader。 |
A.2.ItemWriter
表 2.可用 ItemWriter
Item Writer | Description |
---|---|
AbstractItemStreamItemWriter | 结合了ItemStream 和ItemWriter 接口的抽象 Base Class。 |
AmqpItemWriter | 给定 Spring AmqpTemplate ,它提供了同步send 方法。 convertAndSend(Object) 方法使您可以发送 POJO 对象。 |
CompositeItemWriter | 将一个 Item 传递给ItemWriter 个对象的已注入List 个对象中的每个对象的write 方法。 |
FlatFileItemWriter | 写入平面文件。包括ItemStream 和可跳过功能。参见FlatFileItemWriter。 |
GemfireItemWriter | 使用GemfireOperations 对象,可以根据删除标志的配置将 Item 写入 Gemfire 实例或从 Gemfire 实例中删除。 |
HibernateItemWriter | 该 Item 编写器具有 Hibernate 会话意识,并处理与事务无关的工作,非“了解 Hibernate 的”Item 编写器将不需要了解这些事务,然后委托其他 Item 编写器进行实际编写。 |
ItemWriterAdapter | 使任何类适应ItemReader 接口。 |
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's 配置,Item 将通过save(Object) 方法保留,或通过delete(Object) 删除 |
PropertyExtractingDelegatingItemWriter | 即时扩展AbstractMethodInvokingDelegator 创建参数。根据注入的字段名称数组,通过从要处理的 Item 中的字段(通过SpringBeanWrapper )检索值来创建参数。 |
RepositoryItemWriter | 给定一个 Spring Data CrudRepository 实现,通过配置中指定的方法保存 Item。 |
StaxEventItemWriter | 使用Marshaller 实现将每个 Item 转换为 XML,然后使用 StAX 将其写入 XML 文件。 |
JsonFileItemWriter | 使用JsonObjectMarshaller 实现将每个 Item 转换为 Json,然后将其写入 Json 文件。 |