Spring Boot 的 10 個核心模塊
Spring Boot 的核心模塊
下面我們大概來了解一下 Spring Boot 的核心模塊。
1、spring-boot
這是 Spring Boot 的主模塊,也是支持其他模塊的核心模塊,主要包含以下幾點:
1) 提供了一個啟動 Spring 應用的主類,並提供了一個相當方便的靜態方法,它的主要是作用是負責創建和刷新 Spring 容器的上下文;
2) 內嵌式的並可自由選擇搭配的 WEB 應用容器,如:Tomcat, Jetty, Undertow等;
3) 對配置外部化的支持;
4) 提供一個很方便的 Spring 容器上下文初始化器,包括合理記錄日誌默認參數的支持。
2、spring-boot-autoconfigure
Spring Boot能根據類路徑下的內容自動一些公共大型應用,提供的 @EnableAutoConfiguration 註解就能啟用 Spring 功能的自動配置。
自動配置功能可以推斷用戶可能需要加載哪些 Spring Bean, 如:如果類路徑下有 HicariCP這個連接池的包,此時並未提供任何有效連接池的配置,那麽 Spring Boot 就知道你可能需要一個連接池,並做相應配置。如果用戶配置了其他連接池,那麽 Spring Boot 會放棄自動配置。
3、spring-boot-starters
Starters,我們叫它啟動器好了,它是包括一系列依賴的描述符。簡單的說就是,它可以一站式的幫你打包 Spring 及相關技術應用,而不需要你到處找依賴和示例配置代碼,它都幫你做好了。
例如,第一章我們在介紹 Spring Boot 的時候就說了 spring-boot-starter-web 這個啟動器,你只要引用了這個啟動器應用,就會自動配置 WEB 應用的能力。
spring-boot-starters 這個啟動器這主要提供了 spring-boot, spring-context, spring-beans 這三個 Spring 模塊而已。
4、spring-boot-cli
這是 Spring Boot 的命令行工具,用於編譯和運行 Groovy 源程序,可以十分簡單的編寫並運行一個應用程序。它也能監控你的文件,一旦有變動就會自動重新編譯和重新啟動應用程序。
5、spring-boot-actuator
這是 Spring Boot 提供的執行端點,你可以更好的監控及和你的應用程序交互。這個模塊提供了像健康端點、環境端點、Spring Bean端點等。
6、spring-boot-actuator-autoconfigure
這個原理同上,為 Spring Boot 執行端點提供自動配置。
7、spring-boot-test
Spring Boot測試模塊,為應用測試提供了許多非常有用的核心功能。
8、spring-boot-test-autoconfigure
這個原理同上,為 Spring Boot 測試模塊提供自動配置。
9、spring-boot-loader
這個模塊可以用來構建一個單獨可執行的 jar 包,使用 java -jar 就能直接運行。一般不會直接使用這個來打包,使用 Spring Boot 提供的 Maven 或者 Gradle 插件就行了。
10、spring-boot-devtools
開發者工具模塊,主要為 Spring Boot 開發階段提供一些特性,如修改了代碼自動重啟應用等。這個模塊的功能是可選的,只限於本地開發階段,當打成整包運行時這些功能會被禁用。
Spring Boot 的 10 個核心模塊