Spring Batch 5.0.0-M5 发布


这个里程碑的主要主题是改善 Spring Batch 的测试支持。

测试工具配置更新

到 4.3 版本为止, JobLauncherTestUtils 用来自动连接被测 Job,目的是为了方便测试设置。但如果在测试上下文中定义了多个 Job 呢?如果根本就没有定义 Job beans 呢?因此,虽然这种自动布线在大多数情况下是很方便的,但在上述情况下,它被证明会引起一些问题。在这个版本中,根据社区的反馈,我们决定删除 JobLauncherTestUtils 中任何作业的自动接线。

迁移到 JUnit Jupiter

在这个里程碑式的版本中,Spring Batch 的整个测试套件被迁移到了 JUnit 5。虽然这并不直接影响最终用户,但它有助于Batch团队以及社区贡献者使用下一代的 JUnit 来编写更好的测试。

改进的文档

在这个里程碑式的版本中,文档被更新为使用 Spring Asciidoctor 后端。为了与其他项目保持一致,在这个版本中,Spring Batch 的参考文档也更新为使用这个后端。

弃用和 API 变化

这个版本包括一些弃用和 API 变化。

弃用

这个里程碑式的版本引入了以下的弃用。

  • Hibernate 项目读取器和项目写入器被弃用,转而使用基于 JPA 的项目
  • org.springframework.batch.test.AssertFile 实用程序类被弃用,转而使用现代测试库提供的类似实用程序

API 变化

在这个版本中,在 ItemWriter 接口中引入了一个突破性变化。

public interface ItemWriter<T> {

-- void write(List<? extends T> items) throws Exception;
++ void write(Chunk<? extends T> items) throws Exception;

}

依赖升级

主要的依赖已经升级到了以下版本:

  • 升级到 Spring Framework 6.0.0-M5
  • 升级到 Spring Data 2022.0.0-M5
  • 升级到 Spring Integration 6.0.0-M4
  • 升级到 Spring AMQP 3.0.0-M3
  • 升级到 Spring for Apache Kafka 3.0.0-M5
  • 升级至 Micrometer 1.10.0-M4
  • 升级到 Hibernate 6.1.2.Final

更多详情可查看:https://spring.io/blog/2022/08/24/spring-batch-5-0-0-m5-is-available-now

 


相關推薦

2022-11-12

Spring Batch 5.0 发布了第二个 RC 版本。 Spring Batch 是一个轻量级且功能全面的批处理框架,使用 Spring 和 Java 编写离线和批处理应用程序,旨在为开发对企业系统日常运行至关重要的批处理应用程序提供支持。 此版本包含三项

2023-10-20

(的前两天),相约开源PHP办公室,我们一起聊 AI!>>> Spring Batch 5.1 发布了首个 RC 版本。 Spring Batch 是一个轻量级且功能全面的批处理框架,使用 Spring 和 Java 编写离线和批处理应用程序,旨在为开发对企业系统日常运行至

2022-10-24

Spring Batch 5.0 发布了首个 RC 版本。 Spring Batch 是一个轻量级且功能全面的批处理框架,使用 Spring 和 Java 编写离线和批处理应用程序,旨在为开发对企业系统日常运行至关重要的批处理应用程序提供支持。 此版本包含两个主

2022-09-24

Spring Batch 5.0.0-M6 和 4.3.7 已发布。 Spring Batch 是一个轻量级且功能全面的批处理框架,使用 Spring 和 Java 编写离线和批处理应用程序,旨在为开发对企业系统日常运行至关重要的批处理应用程序提供支持。 Spring Batch 5.0.0-M6 的

2022-10-06

Spring Batch 5.0.0-M7 已发布。 Spring Batch 是一个轻量级且功能全面的批处理框架,使用 Spring 和 Java 编写离线和批处理应用程序,旨在为开发对企业系统日常运行至关重要的批处理应用程序提供支持。 Spring Batch 5.0.0-M7 的更新内

2022-05-23

Spring Batch 发布了 4.3.6 和 5.0.0-M3,前者可从中央仓库获取,后者需要从 https://repo.spring.io/milestone 获取。 Spring Batch 是一个轻量级且功能全面的批处理框架,使用 Spring 和 Java 编写离线和批处理应用程序,旨在为开发

2023-08-27

26 日「源创会」北京站,聊聊 AI 大模型与底层技术 >>> Spring Batch 多个分支发布了更新,包括: 5.1.0-M2, 5.0.3 和 4.3.9。 Spring Batch 是一个轻量级且功能全面的批处理框架,使用 Spring 和 Java 编写离线和批处理应用程序,旨

2022-07-23

Spring Batch 5.0.0-M4 已发布,新版本在支持 Java Records 方面进行了部分改进,以及其他功能增强、错误修复、依赖升级和文档更新。 Spring Batch 是一个轻量级且功能全面的批处理框架,使用 Spring 和 Java 编写离线和批处理应用程

2022-10-15

Spring Batch 5.0.0-M8 已发布。 Spring Batch 是一个轻量级且功能全面的批处理框架,使用 Spring 和 Java 编写离线和批处理应用程序,旨在为开发对企业系统日常运行至关重要的批处理应用程序提供支持。 此版本包含两个主要变

2022-06-01

Spring Native 0.12.0 现已发布。此版本包括 12 个 bug 修复、文档改进以及对 GraalVM 22.1、Spring Boot 2.7.0 和 Spring Cloud 2021.0.3 的依赖项升级。 Spring Native(前身为 Spring GraalVM Native,Spring 社区试验性项目)通过使用 GraalVM 原生镜像编

2022-06-25

Spring Boot 为两个分支发布了更新,分别是 2.7.1 和 2.6.9。 更新内容包括修复错误、优化文档以及升级依赖。 v2.7.1 修复使用 HTTP/2 时忽略 Tomcat server.max-http-header-size 属性的问题 #31329 修复 OAuth2 Resource Server Auto-C

2023-04-01

Spring Cloud 2022.0.2 已发布。 获取地址:Maven Spring Cloud 为开发人员提供了工具,以快速构建分布式系统中的某些常见模式(例如:配置管理、服务发现、智能路由、微代理、控制总线、一次性令牌、全局锁、分布式会话、群

2023-02-18

Spring Cloud Data Flow 2.10.1 发布了。 Spring Cloud Data Flow 是构建数据集成和实时数据处理流水线的工具包  这是一个修复版本,主要带来如下内容: 库更新 Spring Boot 2.7.8 Spring Framework 5.3.25 Spring Shell 2.1.5 K

2024-10-31

用到,但是在底层框架中却大量使用,包括 JDBC、Dubbo、Spring、Solon、slf4j 等框架都有用到,不同的是有的使用 Java 原生的实现,有的框架则自己实现了一套 SPI 机制. 二、Spring SPI Spring 中的 SPI 相比于 JDK 原生的,它的功能更强