Spring Boot教程(1) – 準備開發環境

若是你從未運行過Spring Boot應用,那你必定很好奇這個框架究竟是如何使用的,好比代碼是如何組織起來的?程序從哪裏開始運行?部署時候須要如何打包?在搞清楚這些問題以前,你須要搭建一個本身的開發環境,開發過程都基於這個環境。html

JDK的選擇

Spring Boot應用不一樣於以往的Spring框架應用,它能夠像普通的Java程序同樣以java -jar app.jar的方式運行。那麼這個時候,它就是一個純Java程序了,你的系統中只要有了Java,就能夠把程序跑起來。Spring Boot最新版(2.1.5)的源碼是基於Java 8的,你也可使用Java 11或者其餘高於8的版本。在選擇Java版本的時候,你能夠參考這篇文章。JDK的安裝過程再也不贅述,想必你在學習Java語法的時候就已經完成了這個過程。我推薦使用Java 11,畢竟你是在學習知識嘛,確定選擇最新的穩定版本,生產環境另說。java

構建工具的選擇

構建工具能夠幫助你組織代碼和資源,好比Java代碼放在哪一個文件夾,配置文件放在哪一個文件夾;構建工具能夠幫助你管理依賴,你可使用從別的組拿來的jar包,也可使用公司內部的依賴倉庫,還可使用github上的項目;構建工具能夠編譯打包項目,你也能夠經過插件來參與修改編譯打包的過程,完成定製的需求。Spring Boot支持兩種構建工具,MavenGradlegit

                                      

Maven誕生的時間比較早,應用的範圍比較廣。Maven社區提供了一箇中央倉庫,你能夠在配置文件pom.xml中添加你所須要的庫,那麼Maven就會去中央倉庫去下載,並配置好,接下來你就能夠直接在項目代碼中使用你要的庫了。很是方便,你不須要再去管理一堆jar文件了。github

Gradle的配置文件是須要用Groovy編寫的(你可別真去學Groovy,比葫蘆畫瓢就行),他添加依賴的時候比Maven要清晰簡潔一點。如今已經被Google定爲Android官方構建工具。Gradle繼承了Maven的許多優勢,好比依賴管理,你能夠直接在Gradle中使用中央倉庫的庫。同時,Maven項目的構建流程比較固定,Gradle對這方面進行了優化,增長了靈活性,你能夠自定義任務,也將本身的任務和Gradle的構建流程相關聯。web

Maven和Gradle使用一樣的目錄結構:spring

  • src/main/java 應用的代碼
  • src/main/resource 應用的資源
  • src/main/webapp web應用的資源
  • src/test/java 測試所需代碼
  • src/test/resource 測試所需資源
  • 還有更多

若是你使用macOS,你能夠經過Homebrew安裝,輸入brew install maven/gradle便可。若是你使用Ubuntu,能夠經過apt install maven/gradle來安裝。若是你使用windows或者但願使用其餘包管理工具,能夠嘗試下SDKMAN! 。更多的安裝說明能夠參考Maven官方Gradle官方apache

Spring Boot建議使用Maven 3.3版本以上,或者Gradle 4.4版本以上。我推薦你使用Gradle,反正項目開始時,配置文件搞完了之後就不怎麼動了,萬一某天須要自定義,使用Gradle的話還方便一點。這倆構建工具並無絕對的好壞,跟其餘工具同樣,領導用啥咱用啥,同事用啥咱用啥,老代碼用啥咱用啥,最後纔是,我習慣用啥就用啥。windows

IDE的選擇

Spring官方提供了幾個開發工具app

  • Spring Tools for Eclipse:基於Eclipse,集成了不少相關的插件,若是你是Eclipse的忠實用戶,可使用它。
  • Spring Tools 4 for Visual Studio Code: VS Code的Spring Boot擴展
  • Spring Tools 4 for Atom IDE:Atom的Spring Boot插件

雖然說官方提供的工具多,我卻一個都沒有用過。多年前使用Eclipse開發安卓應用的糟糕體驗我如今還記憶猶新。另外兩個工具由於不用編輯器,因此沒有接觸過。Java這種語言,天生要和IDE結合的。若是你不明白本身的需求,那麼我推薦你使用IntelliJ IDEA框架

IntelliJ IDEA的官網

Intellij IDEA在業界被認爲是最好的開發工具之一,有社區版和旗艦版之分,旗艦版支持Spring Boot等web開發框架,社區版只支持基本的Java或者其餘JVM語言開發,官網有列表能夠查看兩個版本的詳細區別。社區版免費,旗艦版收費,第一年149刀,第二年119刀,之後每一年89刀,挺貴的,不過對於一些羣體有特價,學生和老師免費,非盈利開源項目開發者免費,培訓班免費,非盈利組織半價,創業公司半價等等。

旗艦版和社區版的簡略區別

總結

在接下來的教程中,我將使用OpenJDK 11做爲JDK,使用Gradle做爲構建工具,在macOS用Intellij IDEA寫代碼,使用Ubuntu進行部署。若是你使用的不是這些東西,不用懼怕,繼續讀下去,不會有很大障礙的,工具只是形式,你須要集中更多精力去理解Spring Boot的用法。

下一篇將講解如何新建一個Spring Boot項目並跑起來。

原文連接:fookwood.com/spring-boot…

相關文章
相關標籤/搜索