先想一下,正常我們想要建立一個web服務,首先需要下載下傳tomcat,建立web工程,配置各種web.xml,引入spring的配置,各種配置檔案一頓倒騰.....下載下傳有了spring boot,你建立一個web工程隻需要一個java類,甚至都不需要下載下傳tomcat,直接右鍵執行就能啟動一個web服務。聽起來就讓人感覺興奮!
最近我也是工作有需要,需要建立一個微服務的子產品。正好公司比較開放,支援搞搞新技術,于是就在同僚的慫恿下采用Spring Boot建立了一個工程。使用後發現如果熟練掌握一些配置的技巧,那麼其實是事半功倍的。(當然你需要花點時間熟悉一下Spring Boot的流程)。不過建立這樣一個工程真的是很簡單,下面就先看看效果:
前提條件肯定是要安裝jdk和maven,配置好環境變量,這個就不多說了:
并且建立一個Controller(你也可以直接在上面的類中建立請求Mapping)
就能看到輸出資訊了。
其他的内容就不說了,跟之前部署到tomcat差不多,不同的是多了這個注解,這個注解的作用是會去根據配置的pom依賴,自動加載一些類,比如資料庫的dataSource等。
SpringBoot的項目可以直接打成一個 可執行的jar包,即<code>fat jar</code>。一般情況下java是不支援内嵌jar的,它會在你打包的時候把class抽離出來放在一個jar裡面,如果有兩個class名稱和目錄都相同,那麼就會出現沖突。是以Spring Boot提供了自己的打包插件,這就需要在build當中引入該plugin:
然後,在pom.xml同層目錄下,執行指令<code>mvn clean package</code>就可以打包了。
在Spring Boot中,一般很少使用xml進行配置,都是基于Class來配置的。如果有一些配置項,那麼可以把這個類加上注解<code>@Configuration</code>。如果額外需要引入xml,也可以使用注解<code>@ImportResource</code>添加xml檔案
比如你的項目根本不需要引入資料庫連接配接池,那麼就可以使用exclude進行排除:
這個注解可以當做是<code>@Configuration, @EnableAutoConfiguration and @ComponentScan</code>的合體
執行下面的指令,也可以通過maven啟動spring boot