ItemReaders 和 ItemWriters 列表

Item 讀取器

表 1. 可用的 Item 讀取器
Item 讀取器 描述 執行緒安全

AbstractItemStreamItemReader

結合了 ItemStreamItemReader 介面的抽象基類。

AbstractItemCountingItemStreamItemReader

透過計算 ItemReader 返回的項數來提供基本重啟功能的抽象基類。

AbstractPagingItemReader

提供基本分頁功能的抽象基類

AbstractPaginatedDataItemReader

基於 Spring Data 分頁功能提供基本分頁功能的抽象基類

AggregateItemReader

一個 ItemReader,它將列表作為其項,儲存從注入的 ItemReader 中獲取的物件,直到它們可以作為集合打包輸出。此類必須用作自定義 ItemReader 的包裝器,該自定義 ItemReader 可以識別記錄邊界。自定義讀取器應透過返回一個 AggregateItem 來標記記錄的開始和結束,該 AggregateItem 對其查詢方法(isHeader()isFooter())返回 true。請注意,此讀取器不是 Spring Batch 提供的讀取器庫的一部分,而是作為 spring-batch-samples 中的示例提供。

AmqpItemReader

給定一個 Spring AmqpTemplate,它提供同步接收方法。receiveAndConvert() 方法允許您接收 POJO 物件。

KafkaItemReader

一個 ItemReader,用於從 Apache Kafka 主題讀取訊息。它可以配置為從同一主題的多個分割槽讀取訊息。此讀取器將訊息偏移量儲存在執行上下文中以支援重啟功能。

FlatFileItemReader

從平面檔案讀取。包括 ItemStreamSkippable 功能。請參閱 “FlatFileItemReader”

ItemReaderAdapter

將任何類適配到 ItemReader 介面。

JdbcCursorItemReader

透過 JDBC 從資料庫遊標讀取。請參閱 “基於遊標的 ItemReaders”

JdbcPagingItemReader

給定一個 SQL 語句,分頁瀏覽行,以便在不耗盡記憶體的情況下讀取大型資料集。

JmsItemReader

給定一個 Spring JmsOperations 物件和一個用於傳送錯誤的 JMS 目標或目標名稱,提供透過注入的 JmsOperations#receive() 方法接收的項。

JpaCursorItemReader

執行 JPQL 查詢並迭代返回的結果集

JpaPagingItemReader

給定一個 JPQL 查詢,分頁瀏覽行,以便在不耗盡記憶體的情況下讀取大型資料集。

ListItemReader

一次提供一個列表中的項。

MongoPagingItemReader

給定一個 MongoOperations 物件和一個基於 JSON 的 MongoDB 查詢,提供從 MongoOperations#find() 方法接收的項。

MongoCursorItemReader

給定一個 MongoOperations 物件和一個基於 JSON 的 MongoDB 查詢,提供從 MongoOperations#stream() 方法接收的項。

RepositoryItemReader

給定一個 Spring Data PagingAndSortingRepository 物件,一個 Sort,以及要執行的方法名稱,返回由 Spring Data 儲存庫實現提供的項。

StoredProcedureItemReader

從執行資料庫儲存過程產生的資料庫遊標中讀取。請參閱 StoredProcedureItemReader

StaxEventItemReader

透過 StAX 讀取。請參閱 StaxEventItemReader

JsonItemReader

從 Json 文件讀取項。請參閱 JsonItemReader

AvroItemReader

從包含序列化 Avro 物件的資源中讀取項。

LdifReader

從 LDIF 資源讀取項並將其作為 LdapAttributes 返回

MappingLdifReader

從 LDIF 資源讀取項並使用 RecordMapper 將它們對映到域物件

Item 寫入器

表 2. 可用的 Item 寫入器
Item 寫入器 描述 執行緒安全

AbstractItemStreamItemWriter

結合了 `ItemStream` 和 `ItemWriter` 介面的抽象基類。

AmqpItemWriter

給定一個 Spring AmqpTemplate,提供同步 send 方法。convertAndSend(Object) 方法允許您傳送 POJO 物件。

CompositeItemWriter

將一個項傳遞給注入的 ItemWriter 物件 List 中每個項的 write 方法。

FlatFileItemWriter

寫入平面檔案。包括 ItemStream 和 Skippable 功能。請參閱 “FlatFileItemWriter”

ItemWriterAdapter

將任何類適配到 ItemWriter 介面。

JdbcBatchItemWriter

使用 PreparedStatement 的批處理功能(如果可用),並且可以採取基本步驟在 flush 期間定位故障。

JmsItemWriter

使用 JmsOperations 物件,項透過 JmsOperations#convertAndSend() 方法寫入預設佇列。

JpaItemWriter

此項寫入器支援 JPA EntityManager 並處理一些與事務相關的工作,這些工作是“非 JPA 感知”的 ItemWriter 不需要知道的,然後委託給另一個寫入器執行實際寫入。

KafkaItemWriter

使用 KafkaTemplate 物件,項透過 KafkaTemplate#sendDefault(Object, Object) 方法寫入預設主題,透過使用 Converter 對映項的鍵。還可以配置刪除標誌以向主題傳送刪除事件。

MimeMessageItemWriter

使用 Spring 的 JavaMailSenderMimeMessage 型別的項作為郵件訊息傳送。

MongoItemWriter

給定一個 MongoOperations 物件,項透過 MongoOperations.save(Object) 方法寫入。實際寫入會延遲到事務提交前的最後可能時刻。

PropertyExtractingDelegatingItemWriter

擴充套件 AbstractMethodInvokingDelegator,動態建立引數。引數透過從要處理的項中的欄位(透過 SpringBeanWrapper)檢索值來建立,基於注入的欄位名稱陣列。

RepositoryItemWriter

給定一個 Spring Data CrudRepository 實現,項透過配置中指定的方法儲存。

StaxEventItemWriter

使用 Marshaller 實現將每個項轉換為 XML,然後使用 StAX 將其寫入 XML 檔案。

JsonFileItemWriter

使用 JsonObjectMarshaller 實現將每個項轉換為 Json,然後將其寫入 Json 檔案。

AvroItemWriter

使用 Avro 將資料序列化為 WritableResource

ListItemWriter

將項寫入 List 的項寫入器。

© . This site is unofficial and not affiliated with VMware.