領先一步
VMware 提供培訓和認證,以加速您的進展。
了解更多我謹代表團隊以及所有貢獻者,很高興地宣布 Spring Batch 5.0.0-M4 現在可從我們的 里程碑儲存庫 取得。
這個第四個里程碑引入了對 Java Records 支援的幾項改進。它還包含許多增強功能、錯誤修復、依賴項升級和文件更新。 有關所有變更的更多詳細資訊,請參閱發布說明。
在 v4.3 中首次引入對 Java records 作為 chunk-oriented step 中的項目的支援,但由於 v4 以 Java 8 為基準,因此該支援受到限制。 在 Java 8 中,records 甚至還沒有預覽版。最初的支援基於反射技巧來建立 Java records 並使用資料填充它們,而無法存取 java.lang.Record
API,該 API 已在 Java 16 中完成。
現在 v5 以 Java 17 為基準,我們透過在框架的不同部分利用 java.lang.Record
API 改進了 Spring Batch 中的 records 支援。 例如,FlatFileItemReaderBuilder
現在能夠偵測項目的類型是 record 還是常規 class,並相應地配置對應的 FieldSetMapper
實作 (records 使用 RecordFieldSetMapper
,常規 classes 使用 BeanWrapperFieldSetMapper
)。 這裡的目標是使所需 FieldSetMapper
類型的配置對使用者來說是透明的。 FlatFileItemWriterBuilder
中也實作了相同的功能,以便根據項目的類型配置 RecordFieldExtractor
或 BeanWrapperFieldExtractor
。
有些錯誤無法在不引入重大變更的情況下修復。 我們藉此主要版本發布的機會來修復此類錯誤。 在這個里程碑中,修復了以下主要錯誤
spring-tx
的情況下無法讀取 XML 資料 #4132StepBuilder
時遺失交易屬性 #3686StepExecutionListener
後未正確註冊 ItemReadListener
#773final class com.sun.proxy.$Proxy202
#793StepBuilderFactory
僅支援 Listener Annotations,而不支援 Listener Interfaces #1098這不是一份詳盡的清單。 請參閱發布說明,以取得在此里程碑中修復的完整錯誤清單。
主要依賴項已升級至以下版本
我要感謝所有對此版本做出貢獻的貢獻者! 在我們繼續開發 Spring Batch 5 時,我們期待您在 Github、Twitter 和 StackOverflow 上的回饋。