誰是 Spring 一哥?
今年排名前三的項目依舊保持不變。大約 75% 的受訪者都在使用 Spring Data、Spring Security 和 Spring WebMVC。然而,這些并不是唯一被大量使用的 Spring 子產品。大約三分之一的受訪者在使用 Spring Kafka、Spring Batch、Spring Cloud、Spring WebFlux 和 Spring Integration,而 25% 的受訪者使用 Spring Session、Spring LDAP、Spring AMQP 和 Spring Cloud Gateway。(稍後會詳細介紹 Spring Cloud Gateway)

Data, data 無處不在
應用程式的好壞取決于它們的資料。複雜的應用程式可能會使用多個資料源甚至跨多個雲。Spring Data 使使用資料通路技術、關系和非關系資料庫、map-reduce 架構和基于雲的資料服務變得容易——以及特定技術的子項目。
Spring Data JPA,可以輕松實作 Java Persistence 基于 API 的存儲庫在子項目清單中名列前茅,是 79% 的開發者的首選。Spring Data JDBC(Java 資料庫連接配接),它定義了用于連接配接和查詢幾乎所有關系資料庫的 API,以 74% 排名第二。非關系型資料庫的幾個子產品也很受歡迎,包括 MongoDB (46%)、Redis (37%) 和 Elasticsearch (31%)。
Kotlin 取得新進展
Spring 支援三種程式設計語言:Java、Groovy、和 Kotlin,Kotlin 一種面向對象的語言,包括許多函數式程式設計的思想,于 2016 年首次引入。我們總是想了解什麼是新技術更受歡迎,Kotlin 似乎是赢家。
超過 40% 的受訪者已經在使用 Kotlin 建立 Spring 項目(18% 正在廣泛使用它),以及額外的 18% 計劃使用它。十分之九的人表示看好 Kotlin,在我們的調查所涵蓋了15項新技術中,這是所有人中最積極的回報。
API 是最重要的 Spring 功能
高達 97% 的人同意“API 對我們的 Spring 開發工作至關重要。” 為了了解有關 API 使用的更多資訊,我們為内部消費者和外部消費者拆分了 API。這些是今年排名第一和第三的用例。商業應用程式跌至第二位。
由于内部 API 已成為如此重要的用例,了解人們正在使用哪些内部 API 市場以及他們如何發現和試用 API 将會很有趣。明年尋找有關這些主題的問題。Spring Cloud Gateway 提供了一種對開發人員友好的方式來路由、保護和監控 API 請求。對這個開源項目的興趣正在飙升,同時對我們的商業支援版本 Tanzu Spring Cloud Gateway 的興趣也在飙升。
https://blog.didispace.com/spring-report-2021/#%E8%B6%85-80-%E7%9A%84%E4%BA%BA%E6%AD%A3%E5%9C%A8%E4%BD%BF%E7%94%A8%E7%8E%B0%E4%BB%A3%E5%BA%94%E7%94%A8%E6%9E%B6%E6%9E%84 超 80% 的人正在使用現代應用架構
Spring 的好處之一是它可以幫助開發人員跟上現代技術的步伐,是以他們不必不斷的學習新的語言或架構;86% 的人使用 Spring 的現代架構風格——幾乎每個人 (94%) 都使用微服務,而 35% 使用 Reactive,19% 使用 serverless.。
https://blog.didispace.com/spring-report-2021/#Spring-Native Spring Native
當我們詢問 Spring 有哪些地方可以改進時,有兩項倍受關注:減少啟動時間和優化記憶體使用。通過将 Spring 應用程式編譯為原生可執行檔案,Spring Native 解決了這些挑戰——而且它已經準備好起飛。
https://blog.didispace.com/spring-report-2021/#%E4%B8%BA%E4%BB%80%E4%B9%88%E7%8A%B9%E8%B1%AB%EF%BC%9F 為什麼猶豫?
采用 Spring Native 的最大障礙是:仍處于測試階段 (59%) 和 GraalVM 原生映像技術需要成熟 (46%)。92% 的利益相關者對 GraalVM 持積極态度,這一事實表明社群相信該技術将迅速成熟。
前途一片光明
Spring Native 于 2021 年 3 月進入公測階段。盡管 Spring Native 仍處于測試階段,但 65% 已經計劃部署它:29% 在未來 12 個月内,另外 29% 在 1-2 年時間範圍内,還有 7% 計劃 5 年内。
Spring 正在 K8s 上起飛
在 Kubernetes 上運作容器化 Spring 應用程式的組織數量從去年的 44% 飙升至 57%。這 13 點躍升與整個行業對 Kubernetes 使用增長保持一緻。
十分之九的受訪者希望看到對 Kubernetes 更好的支援,包括 Kubernetes 原生服務發現和配置管理 (67%)、簡化的 Spring Boot 應用程式容器 image 流水線(57%) 和 Spring 應用程式的應用程式管理 (52%)。
https://blog.didispace.com/spring-report-2021/#%E6%80%BB%E7%BB%93 總結
2021 年是 Spring 繼續蓬勃發展的一年,61% 接受調查的組織表示 Spring 是他們的主要或唯一開發平台,高于去年 52%。驚人的達到 95% 的人贊同 Spring Boot 對生産力有巨大的積極影響,90% 的人表示 Spring 的影響比其他 Java 平台更大。Stack Overflow 和 Spring.io 再次成為 Spring 社群的主要資訊來源。我們将全年工作于 Spring.io,以解決社群對網站可用性和内容可發現性的回報。
Spring 釋放的巨大生産力的關鍵是許多有助于加速代碼傳遞的 Spring 項目。例如:近 80% 的組織使用 Spring Data——它與 MongoDB、Redis 和 Elasticsearch 在内的領先資料技術內建。如果你正在尋找合适的 Spring 項目來加速你的開發工作,那麼了解你的同行根據項目成熟度和文檔品質做出決策可能會有所幫助。在使用現代架構的 86% 的受訪者中,94% 使用微服務,35% 使用 Reactive,19% 使用 Serverless。
絕大多數 (97%) 的調查受訪者表示 API 對他們的開發工作至關重要。雖然 JSON over HTTP 和 OpenAPI 占主導地位,令人驚訝的是已經有 20% 在使用帶有 GraphQL 的 API。如果你的組織看到 API 快速增長,請檢視 Spring Cloud Gateway 和 API Portal 以幫助簡化 API 管理。Spring 社群中的每個人似乎都知道 Spring Native。因為它仍處于測試階段,很少有人使用它,但 Spring Native 處于有利地位,可以在不久的将來快速使用。
憑借其龐大的生态系統和良好的業績記錄,Spring 仍然是 企業 Java 的首選平台,未來還有更多。這項年度調查是寶貴的資源,因為我們與 Spring 社群合作,優先考慮新的創新領域并确定和解決問題。感謝你花時間閱讀本報告。如果你也參與了調查,感謝你的回報!
最後,如果你正在學習Spring,那麼我們的Spring Boot和Spring Cloud教程,一定可以幫助你:
Spring Boot系列、
Spring Cloud系列。