本周 Spring - 2020 年 6 月 30 日

工程 | Josh Long | 2020 年 7 月 1 日 | ...

各位 Spring 爱好者,大家好!欢迎来到新一期的《本周 Spring》!这一周真是太棒了,而且今天才周二!周一我和瑞士的朋友们聊了聊,之后又开了一些很棒的会议,今天上午和德国的朋友们交流了,晚上又和 APJ(主要是新加坡)的朋友们聊了聊。明天,我将在 JPoint 虚拟会议上分享关于《Bootiful Kotlin》的内容。期待在那里见到大家!

好了,本期汇总有很多内容,我们开始吧!

Spring MVC 中使用 PathPattern 进行 URL 匹配

工程 | Rossen Stoyanchev | 2020 年 6 月 30 日 | ...

最近发布的 Spring Framework 5.3 M1 公告 中提到了“Spring MVC 带有 PathPattern 解析,用于高效的 URL 匹配”。本文将在此基础上提供更多背景和详细信息。

概述

在 Spring 应用中,AntPathMatcher 用于识别 Spring 配置中的类路径、文件系统、远程资源以及其他资源。它也曾用于 Spring MVC 中匹配 URL 路径。随着时间的推移,Web 应用中模式的使用数量和语法不断增长,AntPathMatcher 也在不断发展以满足这些需求,但仍然存在一些未解决的痛点。

  1. 在 Web 应用中,每个请求都需要多次匹配模式,因此任何性能和效率的提升都很重要。然而,String 模式匹配限制了所能达到的效果。

  2. 多年来,在多个匹配请求的模式中选择最特定的一个一直是一项挑战,没有简单的方法可以在不影响其他情况的前提下使其更具可预测性。

  3. String 路径与 String 模式匹配使得难以避免 URI 编码问题。例如,是否应该先解码传入路径再进行匹配?这样可以在声明模式本身时无需编码字符,但如果请求路径包含 %2F%3B(分别对应 /;)怎么办?一旦解码,它们就会改变路径的结构,使得难以可靠地匹配。我们可以通过 UrlPathHelper#urlDecode 保留请求路径的编码…

本周 Spring - 2020 年 6 月 23 日

工程 | Josh Long | 2020 年 6 月 23 日 | ...

各位 Spring 爱好者,大家好!这周真是太棒了!明天我将举办一个网络研讨会,主题是 Spring Boot 和 Tanzu Wavefront 之间的轻松集成。Wavefront 是一个一体化的集成分布式跟踪、指标分析的可观测性平台。明天加入我们,了解可观测性、Wavefront 以及它们在 Spring 生态系统中与 Spring Cloud Sleuth 和 Micrometer 等工具的集成。

这周有很多精彩内容,我们开始吧!

Spring Boot 2.3 的新特性

工程 | Phil Webb | 2020 年 6 月 18 日 | ...

演讲者:Phil Webb (@phillip_webb)

时间戳

如果您想跳转到演示文稿的特定部分,请使用下面的时间戳

  • 00:27 - 介绍
  • 01:59 - 创建演示
  • 04:01 - 使用 Spring Boot 插件构建 Docker 镜像
  • 09:21 - 使用 Dockerfile 构建 Docker 镜像
  • 16:40 - 定制层
  • 21:38 - 优雅停机
  • 25:19 - Kubernetes 探测
  • 30:55 - 配置属性端到端可追溯性
  • 33:00 - 总结和升级陷阱

演示文稿中引用的链接如下

RSocket 入门:Spring Security

工程 | Ben Wilcock | 2020 年 6 月 17 日 | ...

阅读时间:约 6 分钟 编码时间:约 20 分钟

如果您一直在关注我的 RSocket 系列,您已经学会了如何使用 Spring Boot 构建客户端-服务器应用程序。在今天的练习中,您将学习如何为您的 RSocket 应用程序添加安全性。

使用 Spring Security 可以大大简化 RSocket 应用程序的安全保护任务。Spring Security 是任何生产应用程序都必备的模块。它可以让您轻松地接入许多不同的身份验证提供程序,并根据用户的身份限制其对应用程序的访问,以及…

本周 Spring - 2020 年 6 月 16 日

工程 | Josh Long | 2020 年 6 月 16 日 | ...

各位 Spring 爱好者,大家好!欢迎来到又一期内容丰富的《本周 Spring》每周汇总。

我有几个即将进行的演讲,您可能会感兴趣。我将于 6 月 24 日下午 6:30 在旧金山 JUG 进行(线上)演讲。欢迎参加!

无法参加(线上)旧金山 JUG 的活动?6 月 30 日,VMware Tanzu(Spring 团队所在地)将举办我的一个研讨会,也是关于响应式 Spring 的。我将涵盖大量内容:R2DBC、Reactor、Spring WebFlux、Spring WebFn、用于 SQL 和 NoSQL 的响应式 Spring Data、RSocket、响应式安全、响应式服务编排和组合模式等等。这个时间对于欧盟时区来说非常合适,请立即注册

Spring 技巧:Spring 与 GraalVM(第二部分)

工程 | Josh Long | 2020 年 6 月 16 日 | ...

演讲者:Josh Long (@starbuxman)

各位 Spring 爱好者,大家好!欢迎来到 Spring 技巧特别期,我们将再次探讨 Spring 和 GraalVM 原生镜像。鉴于最近发布了 Spring Graal 0.7.1,它极大地简化了流程,甚至比我们上次在 2020 年 4 月很久以前探讨 Spring 和 Graal 时还要简单,所以我希望尽快发布这个视频。

太长不看 (TL;DR):GraalVM 是一个 JIT 替代品,可以与标准的 JVM 一起使用,这本身就值得研究。GraalVM 提供了一个单独的功能,支持原生镜像编译。这个 native-image 构建器将字节码转换为特定架构的二进制文件,摆脱了 JVM,并嵌入了一个称为 SubstrateVM 的东西。原生镜像启动速度,并且占用的资源

Spring Cloud Data Flow 2.6.0-M1 发布

工程 | Ilayaperumal Gopinathan | 2020 年 6 月 11 日 | ...

Spring Cloud Data Flow 团队很高兴地宣布 2.6.0 的第一个里程碑版本发布。

此 2.6.0-M1 版本添加了一些错误修复和以下功能

  • 组合任务运行器作为 SCDF 原生模块 组合任务运行器现在是 SCDF 本身不可或缺的一部分,并且会自动注册,而拥有自定义组合任务运行器的用户仍然可以覆盖原生模块。这使得我们能够将组合任务管理集成到 Spring Cloud Data Flow 的上下文中。此更改还使我们在管理组合任务时能够提供一些额外的用户体验。

  • 任务应用管理的改进 此里程碑版本在后端添加了一些改进,例如在组合任务中唯一标识任务元素的能力,将任务清单作为上次运行的任务定义的一部分添加,在任务定义清理时清理任务相关资源的能力,以及 SCDF 控制面板的更改。

获取 Spring 电子报

通过 Spring 电子报保持联系

订阅

取得进展

VMware 提供培训和认证,助您加速进步。

了解更多

获取支持

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

了解更多

即将举行的活动

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

查看全部