Spring Boot教程


Spring Team在現有Spring框架的基礎上發佈了一個創新的主要框架:Spring Boot。這是一個來自Pivotal Team(Spring Team)的全新項目。Spring Boot是他們最新的創新,能夠跟上不斷變化的技術需求。 開發Spring Boot的主要動機是簡化配置和部署spring應用程序的過程。

Spring Boot爲開發提供一個具有最小功能的Spring應用程序,並提供了一個新的範例。使用Spring Boot將能夠以更靈活的方式開發Spring應用程序,並且能夠通過最小(或可能沒有)配置Spring來專注於解決應用程序的功能需求。它使用全新的開發模型,通過避免一些繁瑣的開發步驟和樣板代碼和配置,使Java開發非常容易。

Spring Boot可以輕鬆創建單獨的,生產級的基於Spring的應用程序,我們只管「運行」。查看Spring平臺和第三方庫。大多數Spring Boot應用程序只需要很少的Spring配置。

Spring Boot的主要特點

  • 創建獨立的Spring應用程序
  • 直接嵌入Tomcat,Jetty或Undertow(無需部署WAR文件)
  • 提供「初始」的POM文件內容,以簡化Maven配置
  • 儘可能時自動配置Spring
  • 提供生產就緒的功能,如指標,健康檢查和外部化配置
  • 絕對無代碼生成,也不需要XML配置

Spring Boot核心和限制

Spring Boot不是編寫應用程序的框架,它可以幫助我們以最少的配置或零配置開發和構建,打包和部署應用程序。

它不是應用程序服務器。但是它是提供應用程序服務器功能的嵌入式servlet容器,而不是Spring Boot本身。
類似地,Spring Boot不實現任何企業Java規範,例如JPA或JMS。 例如,Spring Boot不實現JPA,但它通過爲JPA實現(例如Hibernate)自動配置適當的bean來支持JPA。
最後,Spring Boot不使用任何形式的代碼生成來完成它的功能。它是利用Spring 4的條件配置功能,以及Maven和Gradle提供的傳遞依賴關係解析,以在Spring應用程序上下文中自動配置bean。

簡而言之,Spring Boot它的核心就是Spring。

Spring Boot優點和缺點

  • 使用Java或Groovy開發基於Spring的應用程序非常容易。
  • 它減少了大量的開發時間並提高了生產力。
  • 它避免了編寫大量的樣板代碼,註釋和XML配置。
  • Spring Boot應用程序與其Spring生態系統(如Spring JDBC,Spring ORM,Spring Data,Spring Security等)集成非常容易。
  • 它遵循「自用默認配置」方法,以減少開發工作量。
  • 它提供嵌入式HTTP服務器,如Tomcat,Jetty等,以開發和測試Web應用程序非常容易。
  • 它提供CLI(命令行界面)工具從命令提示符,非常容易和快速地開發和測試Spring Boot(Java或Groovy)應用程序。
  • 它提供了許多插件來開發和測試Spring啓動應用程序非常容易使用構建工具,如Maven和Gradle。
  • 它提供了許多插件,以便與嵌入式和內存數據庫工作非常容易。

Spring Boot的限制

將現有或傳統的Spring Framework項目轉換爲Spring Boot應用程序是一個非常困難和耗時的過程。它僅適用於全新Spring項目。

未來的Spring項目不會有任何XML配置作爲它的一部分,一切都將由項目Spring Boot處理。

官方參考指南包括所有功能的詳細說明,以及常見用法的詳細說明。

Spring框架結構圖如下所示 -

Spring Boot教程

可以使用Spring Boot創建java -jar或更多傳統war部署來啓動Java應用程序。還提供了一個運行「spring scripts」的命令行工具。