使用 Spring Modulith 简化事件外部化

工程 | Oliver Drotbohm | 2023 年 9 月 22 日 | ...

事务性服务方法是 Spring 应用程序中常见的模式。这些方法会触发对业务至关重要的状态转换。这通常涉及核心域抽象,例如聚合及其对应的存储库。此类安排的典型示例可能如下所示

@Service
@RequiredArgsConstructor
class OrderManagement {

  private final OrderRepository orders;

  @Transactional
  Order complete(Order order) {
     return orders.save(order.complete());
  }
}

由于此类状态转换可能对第三方很有趣,因此我们可能希望……

Paketo Buildpacks Bionic 支持结束

工程 | Scott Frederick | 2023 年 9 月 22 日 | ...

Maven 和 Gradle 的 Spring Boot 插件提供了 使用 Cloud Native Buildpacks 构建 Docker 镜像 的能力。默认情况下,Spring Boot 使用 Paketo Buildpacks 项目提供的 CNB 构建器。

发生了什么变化

Paketo Buildpacks 项目已宣布不再支持基于 Ubuntu 18.04 Bionic 的构建器,而是支持基于 Ubuntu 22.04 Jammy 的构建器。有关受此更改影响的构建器的更多详细信息,请参阅 Paketo 公告

Spring Boot 3.1 及更早版本 Maven 和 Gradle 插件在构建时默认使用 Bionic Base Builder……

您好,Java 21

工程 | Josh Long | 2023 年 9 月 20 日 | ...

您好,Spring 粉丝!

获取代码

在我们开始之前,请快速帮我做件事。如果您还没有,请转到 安装 SKDMAN

然后运行

sdk install java 21-graalce && sdk default java 21-graalce

就是这样。您现在在计算机上拥有了 Java 21 和支持 Java 21 的 GraalVM,随时可以使用。在我看来,Java 21 可能是 Java 有史以来最重要的版本,因为它意味着使用 Java 的用户拥有了一个全新的机会世界。它带来了一系列不错的 API 和新增功能,例如模式匹配,这些功能是多年来缓慢而稳定地添加到平台中的功能的顶峰。但是……

Spring 提示:愉快地跃迁到 Java 21

工程 | Josh Long | 2023 年 9 月 19 日 | ...

您好,Spring 粉丝!支持 Java 21 的 Java 21 和 GraalVM 终于来了!它已经酝酿了很长时间,但 Java 21(将于今天 2023 年 9 月 19 日晚些时候发布)带来了任何 Java 版本中一些最令人兴奋的新功能。在此视频中,我(https://www.youtube.com/@coffeesoftware)将回顾 Java 17 中的一些基础功能,并了解它们如何在 Java 21 中达到顶峰。我将介绍最大的功能——虚拟线程和模式匹配。我还将介绍一些您可能不会注意到的生活质量功能,但这些功能……

本周 Spring - 2023 年 9 月 19 日(Java 21 版)

工程 | Josh Long | 2023 年 9 月 19 日 | ...

您好,Spring 粉丝!欢迎收看另一期《本周 Spring》——**Java 21 版**!

确实,最大的新闻,也是**最大**的新闻是 Java 21 现已推出!您应该使用 SDKMAN 安装它,如下所示:sdk install java 21-graalce && sdk default java 21-graalce。此安装为您提供了新的 Java 21 OpenJDK 发行版以及 Java 21 的新 GraalVM 原生镜像支持。它可以很好地与现有版本的 Spring Boot 配合使用,但真正的回报将来自 Spring Boot 3.2,在那里您可以通过简单地切换属性来插入虚拟线程:spring.threads.virtual.enabled=true。Spring Boot 3……

本周 Spring - 2023 年 9 月 12 日

工程 | Josh Long | 2023 年 9 月 12 日 | ...

您好,Spring 粉丝!欢迎收看另一期《本周 Spring》!9 月 12 日这天您过得怎么样?我过得还不错,甚至感到兴奋。我刚刚从美丽的挪威奥斯陆回来,未来 30 天左右将非常忙碌,从今天开始。我将访问华盛顿州西雅图;墨西哥墨西哥城;德克萨斯州达拉斯;新加坡(SpringOne 新加坡);比利时安特卫普(Devoxx BE!);英国伦敦;荷兰阿姆斯特丹;以及(也许)德国的部分地区。请关注我的 社交媒体视频,以便在这些日期和职责变得更加明确时获取详细信息。无论如何,我们本周有很多内容需要了解,所以……

一起说:Spring Boot 3.2、GraalVM 原生镜像、Java 21 和使用 Project Loom 的虚拟线程,

工程 | Josh Long | 2023 年 9 月 9 日 | ...

这件事已经酝酿了很长时间,但最终我们终于可以创建使用 Spring Boot(通过 Spring Boot 3.2)和 Java 21 的虚拟线程(Project Loom)的 GraalVM 原生镜像了!

为什么这一切都很重要?Project Loom 和 GraalVM 原生镜像这些单独的项目都提供了引人注目的运行时特性。我已经等了很久了,这些特性终于融合在一起了!让我们依次讨论它们。

GraalVM 原生镜像

GraalVM 是一个 OpenJDk 发行版,它提供了一些额外的实用程序,包括一个名为 native-image 的实用程序,该实用程序对您的代码进行提前 (AOT) 编译。我们……

本周 Spring - 2023 年 9 月 5 日

工程 | Josh Long | 2023 年 9 月 5 日 | ...

您好,Spring 粉丝!欢迎收看另一期《本周 Spring》!您过得怎么样?我刚刚度过了一个愉快的劳动节周末,现在正前往挪威奥斯陆参加精彩的 JavaZone 2023 活动。这将是我自疫情以来第一次回到美丽的挪威奥斯陆!我迫不及待!如果您在那里,请随时打个招呼!

获取 Spring 电子邮件通讯

通过 Spring 电子邮件通讯保持联系

订阅

抢先一步

VMware 提供培训和认证,以助您快速提升技能。

了解更多

获取支持

Tanzu Spring 在一个简单的订阅中提供 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件。

了解更多

即将举行的活动

查看 Spring 社区中所有即将举行的活动。

查看全部