🔥 頭條新聞
- Spring Tools 5.2.0 發佈 (Spring Blog)
Spring Tools 5.2.0 正式發佈,為 Visual Studio Code、Cursor、Eclipse 等開發環境帶來了多項更新與改進。此版本強化了對 Spring 專案的支援,提升了開發效率與使用者體驗,是 Spring 開發者不可錯過的重要工具更新。
👉 消息來源 - Java 新聞精選:A2A Java SDK 1.0、Jakarta EE 12、JNoSQL、GraalVM 等更新 (InfoQ Java)
本週 Java 新聞精選涵蓋了 A2A Java SDK 1.0 的正式發佈、Jakarta EE 12 的最新進展、JNoSQL、GraalVM、Micrometer 及 Gradle 的更新資訊。這份摘要為 Java 開發者提供了快速掌握近期生態系統重要變化的途徑,有助於追蹤各個關鍵函式庫與框架的發展。
👉 消息來源 - Spring Boot 4.1 新增 gRPC 自動配置、SSRF 緩解與 Kotlin 2.3 支援 (InfoQ Java)
Broadcom 發佈 Spring Boot 4.1,帶來了 gRPC 自動配置、HTTP 用戶端 SSRF 緩解措施,並支援 Kotlin 2.3。此外,它還提供了延遲資料來源初始化等新功能,大幅提升開發效率與應用程式的安全性,是 Spring Boot 開發者的重要升級資訊。
👉 消息來源 - Java 新聞精選:JDK 27 進入降載階段,JDK 28 專家小組成立 (InfoQ Java)
本週 Java 新聞精選涵蓋了 JDK 27 進入降載階段一、JDK 28 專家小組的成立、GlassFish 架構更新、Infinispan 以及 Kotlin 的進展。這份摘要為 Java 開發者提供了快速掌握近期 JDK 核心發展與生態系統重要變化的途徑,有助於規劃未來的技術路線圖。
👉 消息來源 - Codename One:核心整合 AI、OAuth 與其他平台 API (Foojay)
Codename One 框架核心深度整合了 AI 功能、現代化的 OAuth/OIDC 認證與 WebAuthn 通行金鑰,並新增了 Wi-Fi 連線與分享功能回呼。這些更新大幅提升了框架的功能性與現代化程度,為 Java 開發者在建置跨平台應用程式時,提供了更強大、更安全的工具。
👉 消息來源 - 預設 Java 17、技能與主題強調:新專案生成器更新 (DZone Java)
文章介紹了新專案生成器的更新,現在預設使用 Java 17 作為 JDK 版本,並為每個生成專案提供了 `AGENTS.md` 技能撰寫功能,讓現代 AI 代理程式能更好地協同工作。這項更新簡化了新專案的啟動配置,並為 AI 輔助開發提供了即時支援。
👉 消息來源 - Java 27 功能:有什麼值得期待? (Reddit r/java)
本文預覽了 Java 27 的主要功能和潛在改進,涵蓋了新 JEPs、效能最佳化和語法糖等。對於希望提前了解 Java 語言最新發展的開發者來說,這是一個重要的參考,有助於規劃未來的技術棧升級與應用。
👉 消息來源 - Ratchet 0.1.1:Jakarta EE 的開源 CDI 原生排程器發佈 (Reddit r/java)
Ratchet 0.1.1 是一個開源的 CDI 原生工作排程器,專為 Jakarta EE 環境設計,支援持久化工作、重試機制、工作流程管理以及可插拔儲存。這項工具為企業級 Java 應用程式提供了強大且彈性的排程解決方案,提升了任務自動化與可靠性。
👉 消息來源 - Mill 1.2.0-RC1:細粒度並行、支援 Bazel 的遠端快取等功能 (Reddit r/java)
Mill 1.2.0-RC1 發佈,引入了細粒度並行控制(移除全域鎖)、支援 Bazel 相容的遠端快取等多項重要改進。這項建置工具的更新將大幅提升建置效率與大規模專案的協作能力,對於採用 Mill 的開發團隊而言,提供了更優異的開發體驗。
👉 消息來源 - Apache Fory Serialization 1.2.0 發佈:支援 JDK 25/26,無需 sun.misc.Unsafe (Reddit r/java)
Apache Fory Serialization 1.2.0 正式發佈,此版本在無需依賴 `sun.misc.Unsafe` 的情況下,提供了對 JDK 25/26 的支援。這項更新確保了序列化函式庫在最新 Java 版本中的兼容性與穩定性,對於開發者而言,提供了更安全且現代化的資料處理選擇。
👉 消息來源 - Value Classes (Valhalla) 將於 JDK 28 中以預覽功能推出 (Reddit r/java)
Project Valhalla 的 Value Classes 功能確認將在 JDK 28 中以預覽模式推出,這標誌著 Java 語言底層模型的一大躍進。它將改善記憶體配置與效能,減少物件開銷,對於追求高效率 Java 應用程式的開發者來說,是值得密切關注的重大更新。
👉 消息來源
📚 教學與指南
- Java 微服務能與 Go 一樣快嗎?2026 年效能基準更新 (Inside Java)
探討 Java 微服務在現代執行環境與硬體上,能否達到與 Go 媲美的效能。這篇文章深入分析了精心實作的 Java HTTP 服務的表現,而非單純的語言競爭。對於追求極致效能的 Java 開發者而言,提供了寶貴的基準測試數據與最佳化洞察。
👉 消息來源 - 代理式程式碼如何加速 Java 應用程式的遷移 (Inside Java)
學習如何利用代理式程式碼(Agentic Coding)作為智慧開發夥伴,顯著加快 Java 應用程式的遷移過程。這篇文章深入探討了 AI 輔助的開發方法在實際專案中的應用,為大型系統升級提供了嶄新的思路與實用策略。
👉 消息來源 - Spring AI 2.0 中的工具呼叫:可組合的代理式架構 (Spring Blog)
探討 Spring AI 2.0 中「工具呼叫」的核心概念,這使得 AI 模型能夠自主呼叫應用程式定義的函式並根據結果採取行動。文章深入分析了這種可組合的代理式架構,對於希望在 Spring 專案中整合先進 AI 功能的開發者來說,是重要的技術指南。
👉 消息來源 - 簡報:AWS 無伺服器 Java 實用效能調校 (InfoQ Java)
AWS Hero Vadym Kazulkin 解釋如何在 AWS Lambda 上克服 Java 冷啟動和記憶體佔用高的挑戰。這份簡報深入探討了效能調校的技術細節,比較了不同最佳化策略,為在雲端環境中部署高效能 Java 應用程式的開發者提供了實用指南。
👉 消息來源 - 使用 Codename One 進行跨平台 Java 開發簡介 (Baeldung)
學習如何利用 Codename One 函式庫進行跨平台 Java 開發,並了解它如何處理排版、導航、樣式設定以及主題。這篇文章提供了入門指南,幫助 Java 開發者快速掌握使用 Codename One 建置可部署於多個作業系統之應用程式的基礎知識與實作技巧。
👉 消息來源 - 無需 Dockerfile 建置 Java 容器:Azul Zulu 與 Paketo Buildpacks (Foojay)
學習如何利用 Azul Zulu 與 Paketo Buildpacks 在沒有 Dockerfile 的情況下,高效建置 Java 容器映像。文章涵蓋了 Spring Boot 的內建支援、Azul Zulu Buildpack 的配置、客製化 JRE 的生成以及可觀測性與偵錯功能,對於簡化容器化部署流程具有重要參考價值。
👉 消息來源 - OpenAPI、ORM、SVG 與 Lottie:開發工具整合 (Foojay)
本文介紹了一個 OpenAPI 3.x 用戶端產生器,能將規範轉換為型別化的 Codename One 程式碼,以及 JPA 形式的 SQLite ORM。同時,還包含 JAXB 形式的 JSON/XML 映射器、建置時 SVG/Lottie 轉碼器,並整合了宣告式路由與深層連結 API,提升開發效率。
👉 消息來源 - Spring vs Quarkus vs Jooby vs Vert.x:選擇你的下一個 Java 框架 (Foojay)
文章深入比較了 Spring Boot、Quarkus、Jooby 和 Vert.x 四大 Java 框架,分析了它們的優缺點、適用場景與效能表現。對於需要選擇適合專案的 Java 框架的開發者而言,這是一份全面的指南,有助於在眾多選項中做出明智的決策,優化開發體驗與應用程式表現。
👉 消息來源 - Foojay Podcast #98:JNI 痛苦的終結:WebAssembly 如何悄悄取代 Java 中的原生函式庫 (Foojay)
本集 Podcast 探討了 WebAssembly 如何成為 Java 中 JNI 的現代且安全的替代方案,讓開發者能夠在 Java 應用程式中運行原生程式碼而無需面對 JNI 的複雜性。這對於需要高效能或與原生系統互動的 Java 專案,提供了重要的技術方向與實作洞察。
👉 消息來源 - 使用 OpenTelemetry 和 Dash0 觀察 Apache NetBeans (Foojay)
文章探討了如何利用 OpenTelemetry 和 Dash0 實現對 Apache NetBeans IDE 的可觀測性,不僅是出於好奇,更是為了深入了解 IDE 的內部運作。這對於開發工具的優化、效能分析以及排查問題具有實際價值,為 Java 開發者提供了可觀測性實踐的案例。
👉 消息來源 - 現代 Java 中常見的資訊安全漏洞及其防範 (DZone Java)
隨著資訊安全威脅日益增多,本文深入探討了 Java 應用程式中常見的資訊安全漏洞及其預防策略。文章強調了透過最佳實踐、安全編碼規範和最新的安全框架,來保護應用程式、基礎設施和敏感資料的重要性,為 Java 開發者提供了全面的安全開發指南。
👉 消息來源 - 一個啟動時間減半的 Spring Boot 應用程式 (DZone Java)
本文介紹了如何透過將 MovieManager 專案更新至 JDK 25 並利用 Project Leyden 的 AOT 快取,成功將 Spring Boot 應用程式的啟動時間縮短一半。這對於追求快速啟動和低記憶體佔用的微服務架構來說,提供了實用的效能最佳化策略與技術方向。
👉 消息來源 - 使用 Java Enterprise 和 LangChain4j 實作規劃模式 (DZone Java)
文章探討了如何在 Java Enterprise 應用程式中,結合 LangChain4j 實作 AI 的「規劃模式」,使 AI 能夠超越基礎的文字生成,主動執行更複雜的業務邏輯。這對於希望將 AI 深度整合到企業級系統中的開發者而言,提供了具體實踐方法與架構考量。
👉 消息來源 - 在 Java 中使用原生 SQL,無需 JDBC 樣板程式碼 — 認識 Ujorm3 (DZone Java)
本文介紹了 Ujorm3 函式庫,它能讓 Java 開發者以更簡潔的方式編寫原生 SQL,擺脫傳統 JDBC 樣板程式碼的繁瑣。透過 Ujorm3,可以直接操作資料庫,同時保持型別安全和程式碼的可讀性,為需要精確控制 SQL 的專案提供了高效且易於維護的解決方案。
👉 消息來源 - Valhalla 專案解析:十年努力如何在 JDK 28 中實現 (Reddit r/java)
本文深入解析了歷經十年開發的 Project Valhalla,以及其如何在 JDK 28 中正式亮相。它詳細闡述了 Value Types 等關鍵概念如何改變 Java 物件模型的底層實作,進而大幅提升記憶體使用效率與效能,對於 Java 開發者理解下一代 JVM 技術至關重要。
👉 消息來源 - 使用 JPA 和 RSQL 實現更安全的資料過濾 (Reddit r/java)
本文探討了如何結合 JPA(Java Persistence API)與 RSQL 函式庫,為 Java 應用程式實作更安全且彈性的資料過濾機制。文章提供實作範例與最佳實踐,幫助開發者有效防止 SQL 注入等資訊安全漏洞,並提升查詢介面的使用者體驗。
👉 消息來源 - Jet:一個簡單、輕量、現代化的全功能 Java Web 用戶端與伺服器函式庫 (Reddit r/java)
Jet 是一個專為 Java 設計的簡單、輕量且現代化的全功能 Web 用戶端和伺服器函式庫。它提供了即開即用的解決方案,旨在簡化 Web 應用程式的開發,對於尋求高效能、低複雜度 Web 函式庫的 Java 開發者來說,是值得嘗試的新選擇。
👉 消息來源 - 解讀 Parquet:明確的 SIMD、純量基準與 HotSpot 的處理方式 (Reddit r/java)
本文深入探討了 Parquet 資料格式的內部運作,包括明確的 SIMD 指令應用、純量基準效能,以及 HotSpot 虛擬機器如何處理這些底層最佳化。這對於需要處理大數據、優化資料讀寫效能的 Java 開發者而言,提供了對 JVM 深度優化原理的寶貴洞察。
👉 消息來源 - 如何讓 invokedynamic 在一般 Java 中使用 (Reddit r/java)
本文探討了如何在一般 Java 程式碼中更有效地利用 `invokedynamic` 指令,這是一個強大的 JVM 特性,通常用於動態語言實作。文章深入解釋了 `invokedynamic` 的機制及其在現代 Java 中的應用潛力,對於希望掌握 JVM 進階技術的開發者具有參考價值。
👉 消息來源 - 浮點數 (double)、高精度數字 (BigDecimal) 還是定點數? (Reddit r/java)
本文比較了 Java 中處理數值的三種主要方式:`double`、`BigDecimal` 和定點數,並探討了它們各自的優缺點、適用場景以及潛在的精度問題。對於需要精確數值運算、金融計算或避免浮點數誤差的 Java 應用程式開發者,提供了選擇正確數字型別的重要指南。
👉 消息來源 - 新的測試輔助工具 ExploratoryTestRunner:測試類別所有狀態 (Reddit r/java)
介紹了 `ExploratoryTestRunner` 這個新的測試輔助工具,它能幫助開發者探索並測試類別的所有可能狀態。這項工具對於提高測試覆蓋率、發現潛在邊緣案例及改進程式碼品質具有顯著效益,為 Java 專案的單元測試與整合測試提供了新的方法。
👉 消息來源 - Infinispan 與 Redis 在 Tomcat HTTP Session 管理上的比較 (Reddit r/java)
本文比較了 Infinispan 和 Redis 在 Tomcat HTTP Session 管理中的應用,分析了兩種記憶體內資料網格解決方案的優缺點。對於需要為 Java Web 應用程式選擇高效能、可擴展的會話儲存方案的開發者,提供了詳細的技術分析與實用建議。
👉 消息來源 - 透過 C# 類比解釋 JPMS (Java 平台模組系統) (Reddit r/java)
本文透過 C# 的模組化概念,深入淺出地解釋了 Java 平台模組系統(JPMS)的核心原理與功能。對於熟悉 C# 但對 Java 模組化仍感陌生的開發者來說,這提供了極佳的學習橋樑,有助於理解如何在 Java 專案中有效利用模組系統,提升專案的組織性與可靠性。
👉 消息來源 - 一個用 Java 開發的程式碼代理程式外掛程式 (Reddit r/java)
本文介紹了一個以 Java 語言開發的程式碼代理程式外掛程式,它旨在協助開發者自動化部分編程任務,提升開發效率。這對於利用 AI 工具輔助程式碼撰寫、重構或生成測試的 Java 開發者來說,提供了新的實用工具與整合可能性。
👉 消息來源
💬 社群討論
- 一集精彩的 Podcast:DaShaun Carter 談修補、Spring Boot 4.1 與 AI 時代的資訊安全 (Spring Blog)
本集 Podcast 邀請 DaShaun Carter 討論了修補程式、Spring Boot 4.1 的新功能,以及 AI 興起對資訊安全領域帶來的挑戰與影響。對於關注 Spring 生態系統演進與 AI 安全議題的開發者來說,提供了實用且前瞻的觀點。
👉 消息來源 - Oracle 的 OpenJDK 禁止生成式 AI 貢獻,GraalVM 則允許 (InfoQ Java)
Oracle 旗下兩個相關專案對生成式 AI 輔助的開源貢獻採取了截然不同的政策:OpenJDK 管理委員會批准了過渡性政策,明確禁止 AI 生成程式碼,而 GraalVM 則持開放態度。這引發了社群對 AI 程式碼版權與倫理的廣泛討論,對開源專案未來發展具有深遠影響。
👉 消息來源 - AI 是否永遠打破了軟體資訊安全? (Foojay)
文章探討了 AI 時代下軟體資訊安全面臨的嚴峻挑戰,包括 CVE 漏洞的快速增加、AI 檢測漏洞成為常態,以及安全攻防不對稱性的改變。對於 Java 開發者而言,這提醒了在應用程式設計與實作中,重新評估與強化安全策略的迫切性,以應對不斷演進的威脅。
👉 消息來源 - 里爾開發者訪談:Java 開發者對品質、框架、社群與職涯的真實想法 (Foojay)
這份訪談揭示了 Java 開發者對於程式碼品質、框架選擇(Spring Boot vs Quarkus)、社群參與及職涯發展的看法。文章強調了簡潔性在品質中的重要性,並深入分析了 Spring Boot 仍受歡迎與 Quarkus 令人興奮的原因,為 Java 開發者提供了寶貴的社群洞察。
👉 消息來源 - 使用 Undertow 搭配 Spring Boot 3.x 並升級至 4.x 的開發者,你們用什麼取代了 Undertow? (Reddit r/java)
這是一個針對 Spring Boot 升級的社群討論,聚焦於從 Spring Boot 3.x 升級到 4.x 後,如何處理 Undertow 網路伺服器的兼容性或替換問題。對於正在規劃或進行 Spring Boot 專案升級的開發者,這提供了其他開發者在遷移過程中面臨的挑戰與解決方案的實務經驗。
👉 消息來源
💡 心得總結
本週 Java 與 Spring 生態系展現了持續的創新與進步。在 JDK 方面,JDK 27 已進入降載階段,JDK 28 的專家小組成立,特別是 Project Valhalla 的 Value Classes 確認將於 JDK 28 以預覽功能推出,這標誌著 Java 底層效能與記憶體管理的重大突破。Spring 生態則迎來 Spring Boot 4.1,新增 gRPC 自動配置、SSRF 緩解及 Kotlin 2.3 支援,Spring AI 2.0 的工具呼叫功能也預示著 AI 與 Spring 整合的深化。這些發展共同推動 Java 技術棧向更高效能、更高安全性與更智慧化的方向邁進。
對於台灣的 Java 開發者社群而言,這些更新提供了豐富的學習與實踐機會。我們應密切關注如 Valhalla 專案等核心語言特性的演進,並積極探索 Spring AI 在實際專案中的應用潛力。同時,面對 AI 程式碼貢獻政策的差異(如 OpenJDK 與 GraalVM),開發者需要思考 AI 輔助開發的倫理與實踐規範。
本篇文章的內容為老喬原創、二創或翻譯而來。雖已善盡校對、順稿與查核義務,但人非聖賢,多少仍會有疏漏之處難以避免。如果大家有任何問題、建議或指教,都歡迎在底下留言與老喬討論!


發佈:
更新:
瀏覽:
分類:
標籤: