Spring Boot Tutorial

Spring Boot 教程

Spring Boot 是一個開源的基於 Java 的框架,用於建立微服務。它由 Pivotal 團隊開發。使用 Spring Boot 很容易建立獨立且可用於生產環境的 Spring 應用程式。Spring Boot 包含用於開發微服務的全面基礎設施支援,並使您能夠開發企業級應用程式,您可以“直接執行”

為什麼要學習 Spring Boot?

Spring Boot 提供了廣泛的功能和優勢,如下所示:

  • 靈活性 - Spring Boot 提供多種靈活的方式來配置 Java Bean、XML 配置和資料庫事務。

  • 強大的批處理 - Spring Boot 提供了一個強大的批處理機制。

  • 微服務支援 - 微服務是一種架構,允許開發人員獨立開發和部署服務。每個執行的服務都有自己的程序,這實現了輕量級模型來支援業務應用程式。Spring Boot 提供了輕鬆開發和測試微服務的機制。

  • 自動配置 - 在 Spring Boot 中,所有內容都自動配置;無需手動配置。

  • 基於註解 - 在 Spring Boot 中,我們只需使用很少的註解即可建立一個執行的應用程式。

  • 簡化依賴管理 - Spring Boot 根據需要提供了許多啟動器,例如用於 Web、用於資料庫等,以有效地處理依賴項。啟動器專案為相應的功能提供依賴項管理。

  • 嵌入式 Servlet 容器 - Spring Boot 提供了一個嵌入式 Servlet 容器(jetty),也可以更改。此容器在測試應用程式時非常有用。我們可以在不將 Spring Boot 應用程式部署到任何外部應用程式容器的情況下測試所有功能。

Spring Boot 的應用

以下是使用 Spring Boot 框架的一些主要優勢:

  • 基於 POJO - Spring Boot 使開發人員能夠使用 POJO 開發企業級應用程式。僅使用 POJO 的好處是您不需要 EJB 容器產品(例如應用程式伺服器),但您可以選擇僅使用健壯的 Servlet 容器(例如 Tomcat)或某些商業產品。

  • 模組化 - Spring Boot 本質上是模組化的。儘管包和類的數量很大,但您只需關注您需要的那些,而忽略其餘的。

  • 與現有框架整合 - Spring Boot 並沒有重新發明輪子,而是真正利用了一些現有技術,例如幾個 ORM 框架、日誌框架、JEE、Quartz 和 JDK 定時器以及其他檢視技術。

  • 可測試性 - 使用 Spring Boot 編寫的應用程式非常容易測試,因為依賴於環境的程式碼已移至此框架中。此外,透過使用 Java Bean 樣式的 POJO,可以更輕鬆地使用依賴注入來注入測試資料。

  • Web MVC - Spring Boot 的 Web 框架是一個設計良好的 Web MVC 框架,它為 Struts 或其他過度設計或不太流行的 Web 框架提供了極好的替代方案。

  • 集中異常處理 - Spring Boot 提供了一個方便的 API 來將特定於技術的異常(例如由 JDBC、Hibernate 或 JDO 引發的異常)轉換為一致的未經檢查的異常。

  • 輕量級 - 與例如 EJB 容器相比,輕量級 IoC 容器往往更輕量級。這有利於在記憶體和 CPU 資源有限的計算機上開發和部署應用程式。

  • 事務管理 - Spring Boot 提供了一個一致的事務管理介面,可以縮減到本地事務(例如使用單個數據庫)並擴充套件到全域性事務(例如使用 JTA)。

Spring Boot 的目標

Spring Boot 的設計目標如下:

  • 更簡單的配置 - 避免 Spring 中複雜的 XML 配置。使用很少的註解,我們就可以實現相同的配置。

  • 易於開發 - 以更簡單的方式開發可用於生產環境的 Spring 應用程式。

  • 減少開發工作量 - 減少開發時間並獨立執行應用程式。

  • 輕鬆部署 - 透過提供嵌入式應用程式容器來在本地測試應用程式,從而提供更簡單的入門方式。

受眾

本教程旨在幫助 Java 開發人員理解和開發具有最少配置的可用於生產環境的 Spring 應用程式。它探討了 Spring Boot 的主要功能,例如啟動器、自動配置、Bean、執行器等。在本教程結束時,您將獲得 Spring Boot 中級水平的專業知識。

先決條件

本教程面向具有 Java、Spring、Maven 和 Gradle 經驗的讀者。如果您瞭解這些概念,則可以輕鬆理解 Spring Boot 的概念。如果您瞭解如何編寫 RESTful Web 服務,那將是一個額外的優勢。如果您是初學者,我們建議您在開始使用 Spring Boot 之前先學習與這些概念相關的教程。

廣告