Dave Syer

Dave Syer

Spring Cloud、Spring Boot、Spring Batch 的创始人,Spring Security OAuth 的负责人,以及 Spring Integration、Spring Framework、Spring AMQP、Spring Security 的活跃贡献者。经验丰富、注重交付的架构师和开发经理。曾使用 Spring 设计并构建了成功的企业软件解决方案,并在全球主要机构中实施。

博客文章 (作者)Dave Syer

Spring gRPC 0.8.0 现已发布

版本发布 | 2025年4月25日 | ...

我谨代表团队和所有贡献者高兴地宣布,Spring gRPC 0.8.0 已发布,现在可从 Maven Central 获取。这是第一个“非实验性”版本,标志着项目已迁移到 https://github.com/spring-projects 组织中的新仓库位置。我们将为当前唯一的 0.x 版本提供支持,常规的扩展支持周期将从 1.0.0 版本开始(预计与 Spring Boot 4.0.0 同时发布)。

本次发布的主要变更是升级了 Spring Boot 以及 gRPC Java 和…

Spring gRPC 0.6.0 现已发布

版本发布 | 2025年4月5日 | ...

我谨代表团队和所有贡献者高兴地宣布,Spring gRPC 0.6.0 已发布,现在可从 Maven Central 获取。

本次发布的主要变更是将用于创建 gRPC 客户端 Bean 的注解重命名为 @ImportGrpcClients,与 Spring Framework 中 HTTP 接口客户端的工作保持一致。本次发布包含新特性、bug 修复、文档改进和依赖升级。感谢所有通过问题报告和拉取请求做出贡献的人。

如何提供帮助?

如果你有兴趣提供帮助,请查看未解决的问题列表。如果你有一般性问题,请在 Stack Overflow 上使用 spring-grpc 标签提问…

Spring gRPC 0.5.0 现已发布

版本发布 | 2025年3月10日 | ...

我谨代表团队和所有贡献者高兴地宣布,Spring gRPC 0.5.0 已发布,现在可从 Maven Central 获取。

本次发布包含新特性、bug 修复、文档改进和依赖升级。感谢所有通过问题报告和拉取请求做出贡献的人。

如何提供帮助?

如果你有兴趣提供帮助,请查看未解决的问题列表。如果你有一般性问题,请在 Stack Overflow 上使用 spring-grpc 标签提问。

GitHub | 问题列表 | 文档 | Stack Overflow

Spring gRPC 0.3.0 已发布

版本发布 | 2025年1月17日 | ...

实验性项目 Spring gRPC 最近发布了 0.3.0 版本。Jars 包可在 Maven Central 中获取,您可以在 https://start.spring.io 上生成一个使用 Spring gRPC 的新项目。如果您想试用,我们建议您这样做,因为其中需要配置一些构建插件,而生成的项目会为您处理好这一切。

新版本在客户端的工厂接口方面有一些更新。此外,现在完全支持客户端拦截器的自动配置,包括来自 Micrometer 的拦截器。在服务器端,我们现在支持 Spring Security…

使用 Spring 的无反射模板

工程 | 2024年3月22日 | ...

最近出现了一些使用文本模板但在构建时编译为 Java 类的 Java 库。因此,它们在一定程度上可以宣称是“无反射”的。除了潜在的运行时性能优势外,它们还易于使用并与 GraalVM 本机镜像编译集成,因此对于刚开始接触 Spring Boot 3.x 中该技术栈的人来说非常有趣。我们来看一下精选的一些库(JStachioRockerJTEManTL),以及如何让它们运行起来。

示例的源代码位于 GitHub,每个模板引擎都有自己的…

超媒体与浏览器增强

工程 | 2024年3月15日 | ...

如今的前端开发主要由大型 JavaScript 客户端框架主导。这有很多充分的理由,但对于许多用例而言,这可能非常低效,而且框架工程变得异常复杂。在本文中,我想探讨一种不同的方法,这种方法更高效、更灵活,由更小的构建块构建而成,并且非常适合像 Spring 这样的服务器端应用框架(或各种服务器端语言中的类似工具)。其理念是拥抱超媒体概念,想象下一代浏览器会如何…

使用 Spring Boot 应用进行客户端开发 - 第 2 部分

工程 | 2021年12月17日 | ...

第 1 部分

使用 SSE Stream 的普通 Javascript

在这个简单的 HTML 替换用例中,Vue 并未真正增加很多价值,而且它对 SSE 示例根本没有价值,因此我们将继续使用原生 Javascript 实现。这是一个 stream 标签页

<div class="tab-pane fade" id="stream" role="tabpanel">
	<div class="container">
		<div id="load"></div>
	</div>
</div>

以及一些用于填充它的 Javascript 代码

<script type="module">
	var events = new EventSource("/stream");
	events.onmessage = e => {
		document.getElementById("load").innerHTML = e.data;
	}
</script>

使用 React 的动态内容

使用 Spring Boot 应用进行客户端开发

工程 | 2021年12月17日 | ...

本文探讨了 Spring Boot 开发者在应用程序客户端(浏览器端)使用 Javascript 和 CSS 的不同选项。计划的一部分是探索一些在传统的 Spring Web 应用服务器端渲染世界中表现良好的 Javascript 库。这些库通常对应用程序开发者来说非常轻量级,因为它们允许您完全避免使用 Javascript,但仍然可以获得不错的渐进式“现代” UI。我们还将介绍一些更“纯粹”的 Javascript 工具和框架。这是一个连续的光谱,所以这里有一个 TL;DR…

RSocket 的“Wiremock”

工程 | 2021年6月2日 | ...

如果您的应用程序在运行时连接到 RSocket 服务器,您如何测试它?我们需要一种方法让测试启动一个服务器并告诉我们它正在监听的位置,然后我们需要能够注册请求和响应示例(也称为“契约”)。这就是这个项目提供的功能 - 它就像 Wiremock,但用于 RSocket。

入门指南

使用该项目最简单的方法是将其作为 JUnit (Jupiter) 扩展,例如

@SpringBootTest
@ExtendWith(RSocketServerExtension.class)
class SocketsApplicationTests {
	...
}

安装此扩展后,Spring Boot 测试将运行一个 RSocket 服务器,该服务器监听由 test.rsocket.server.port 指定的端口,因此测试可以直接连接到它,或者(更可能的是)被测试的代码将连接到它。您可能需要通过 @SpringBootTest 注解告诉它连接到哪里,例如,如果应用程序在运行时查找名为 rsocket.port 的属性…

Spring Cloud Function 本机镜像

工程 | 2020年5月4日 | ...

这是 Spring Cloud Function 在 AWS Lambda 上的内存与计费的最新图表。它显示了 Lambda 中两种自定义运行时的内存分配函数作为 GBsec 计费指标,一种是纯 Java,另一种是使用GraalVM 本机镜像,正如最近 Andy Clement 在他的博客中描述的那样。

aws-billing-3.x

在这两种情况下,功能都是相同的(一个简单的 POJO-POJO 函数),并且它们都只显示冷启动的结果。热启动(请求到达时函数已经处于活动状态)要快得多、便宜得多(除了最小内存设置,它们的成本都相同…)

领先一步

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

了解更多

获取支持

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

了解更多

近期活动

查看 Spring 社区的所有近期活动。

查看全部