Java 技術

已完成

在此單元中,我們會區分不同類型的Java架構、伺服器和平臺。

Spring Framework

Spring Framework 是應用程式架構,並反轉控制 (IoC) 容器。 Spring 過去一直用來補充 Enterprise JavaBeans (EJB) 模型。 其核心功能包括:

  • 相依性插入
  • 面向層面的程序設計
  • 商業抽象概念

Spring Boot

Spring Boot 在 Spring Framework 之上運行,並具有預設的自動配置。 Spring Boot 應用程式會獨立執行,非常適合微服務。

Spring Data

Spring Data 可簡化關係型和非關係資料庫、MapReduce 架構和雲端式數據服務的數據存取。

Spring Security

Spring Security 是保護 Spring 型應用程式 事實上 的標準。 它提供高階的驗證和訪問控制。 例如,Spring Security 與 Active Directory 整合良好。

Spring Cloud

Spring Cloud 用於分散式系統。 Spring Cloud 隨附服務探索、組態管理、監視,以及良好的開發人員體驗。

Spring Batch

Spring Batch 是一種輕量型架構,適用於對日常作業至關重要的強固批次應用程式。

MicroProfile 和 Jakarta EE

您可以將 MicroProfile 和 Jakarta Enterprise Edition (EE) 視為 Java EE 規格的開放原始碼後續追蹤。

MicroProfile 是微服務架構的一組規格。 其自稱為「可針對微服務架構將 Java 企業版最佳化的開放論壇」。 MicroProfile 旨在跨多個實作進行創新,並在感興趣的共同領域共同作業。

Jakarta EE 是一組用於建置企業應用程式的規格。 其模組化結構可讓開發人員建立有效率的軟體解決方案。 您可以將 Jakarta EE 應用程式封裝為 EAR 檔案或 WAR 檔案。

Web Profile 是具有 Web 焦點的後端服務的 Jakarta EE 子集,但別擔心! 您可以在其中新增企業平臺的特定 API。

應用程式伺服器

Java EE 應用程式必須部署到 Java EE 相容的應用程式伺服器(Weblogic、WebSphere、WildFly、GlassFish、Payara 等等)。

  • Apache Tomcat 是 HTTP 伺服器和 Java Servlet 容器。 它會實作 Servlet、Java Server Pages (JSP)、Java 表達式語言和 Java WebSocket 規格。

  • Oracle Weblogic Server 是一個統一且可延伸的平臺,可用於開發、部署和執行企業應用程式。 Weblogic Server 提供健全且成熟的 Java EE 和 Jakarta EE 實作。

  • Red Hat JBoss 企業應用程式平臺 (JBoss EAP) 可為內部部署和虛擬實作或私人、公用或混合式雲端提供企業級的安全性和效能。

  • WildFly 是 JBoss EAP 的開放原始碼上游。 這個社群驅動的品種非常適合開發和測試。

  • IBM WebSphere 應用程式伺服器 (WAS) 是適用於企業應用程式的彈性、安全性豐富的 Java 伺服器運行時間環境。 其著重於可靠性高。 它支援微服務和以標準為基礎的程序設計模型。 您可以按照自己的步調進行現代化,增強對各工作負載的可見性,分析企業應用程式,並推進您向 Kubernetes 的旅程。

  • Open Liberty 是社群驅動的開放原始碼 WAS 版本。

  • Oracle GlassFish 是許多 Java EE Web 標準的參考實作(包括 Servlet 和 JSP)。

微服務導向架構的其他架構

  • Netty 是非封鎖 I/O (NIO) 客戶端/伺服器架構。 它可讓您快速輕鬆地開發網路應用程式,例如通訊協定伺服器和用戶端。 它可大幅簡化和簡化網路程序設計,例如 TCP 和 UDP 套接字伺服器。 Netty 是異步的事件驅動網路應用程式架構,可快速開發可維護、高效能的通訊協定伺服器和用戶端。

  • Quarkus 是專為 OpenJDK HotSpot 和 GraalVM 量身打造的 Kubernetes 原生 Java 堆疊。 Quarkus正在獲得越來越多的動力。 順便說一下,還有更多以效能為主的架構,例如 Vert.x、Helidon、Payara Micro 和 KumuluzEE。

  • Micronaut 是一種現代化、以 JVM 為基礎的完整堆疊架構,可建置模組化、容易測試的微服務和無伺服器應用程式。 Micronaut 具有相依性注入和面向方面的程式設計執行環境,不使用反射,這讓 Micronaut 應用程式更容易在 GraalVM 上執行。