一、我們可以使用spring initializr來創建springboot項目。
spring initializr從本質上來說就是一個web應用程序,它能為你生成spring boot項目結構。雖然不能生成應用程序代碼,但它能為你提供一個基本的項目結構,以及一個用于構建代碼的maven或gradle構建說明文件。你只需要寫應用程序的代碼就好了。
spring initializr有幾種用法。
1.通過web界面使用。
2.通過spring tool suite使用。
3.通過intellij idea使用。
4.使用spring boot cli使用。
5.補充: 單純地使用gradle或者maven來構建。
1. 使用spring initializr的web界面
要使用spring initializr,最直接的辦法就是用瀏覽器打開http://start.spring.io,你應該能看到類似下圖的一個表單:
在這里你可以選擇使用maven或者gradle來構建項目,以及是基于java還是groovy,以及spring boot的版本,在下面我們可以設置項目的group以及artifact,在右邊dependencies里我們可以添加所需要的依賴,輸入我們所需要的依賴名稱會出現匹配,若沒有找到我們需要的依賴,可以點擊下面的 "switch to the full version" 就能看到可用依賴的完整列表。這些信息是用來生成maven的pom.xml文件(或者gradle的build.gradle文件)的。
填完表單,選好依賴,點擊“generate project”按鈕,spring initializr就會為你生成一個項目。瀏覽器將會以zip文件的形式(文件名取決于artifact字段的內容)把這個項目下載下來。根據你的選擇,zip文件的內容也會略有不同。不管怎樣,zip文件都會包含一個極其基礎的項目,讓你能著手使用spring boot開發應用程序。
下載下來之后我們只需要解壓縮下然后導入至ide中就好了~
2. 在spring tool suite里創建spring boot項目
長久以來,spring tool suite①一直都是開發spring應用程序的不二之選。從3.4.0版本開始,它就集成了spring initializr,這讓它成為開始上手spring boot的好方法。要在spring tool suite里創建新的spring boot應用程序,在file菜單里選中new > spring starter project菜單項,隨后spring tool suite會顯示一個與下圖相仿的對話框。
如你所見,這個對話框要求填寫的信息和spring initializr的web界面里是一樣的。事實上,你在這里提供的數據會被發送給spring initializr,用于創建項目zip文件,這和使用web表單是一樣的。
如果你想在文件系統上指定項目創建的位置,或者把它加入ide里的特定工作集,就點擊next按鈕。你會看到第二個對話框,下如圖所示:
location指定了文件系統上項目的存放位置。如果你使用eclipse的工作集來組織項目,那么也可以勾上add project to working sets這個復選框,選擇一個工作集,這樣就能把項目加入指定的工作集了。
site info部分簡單描述了將要用來訪問initializr的url,大多數情況下你都可以忽略這部分內容。然而,如果要部署自己的initializr服務器(從https://github.com/spring-io/initializr復制代碼即可),你可以在這里設置initializr基礎url。
點擊finish按鈕后,項目的生成和導入過程就開始了。你必須認識到一點,spring tool suite的spring starter project對話框,其實是把項目生成的工作委托給http://start.spring.io上的spring initializr來做的,因此必須聯網才能使用這一功能。
一旦把項目導入工作空間,應用程序就可以開發了。在開發的過程中,你會發現spring tool suite針對spring boot還有一些錦上添花的功能。比如,可以在run菜單里選中run as > spring boot application,在嵌入式服務器里運行你的應用程序。
注意,spring tool suite是通過rest api與initializr交互的,因此只有連上initializr它才能正常工作。如果你的開發機離線,或者initializr被防火墻阻斷了,那么spring tool suite的spring starter project向導是無法使用的。
3. 在intellij idea里創建spring boot項目
intellij idea是非常流行的ide,intellij idea 14.1就開始支持spring boot了。
要在intellij idea里創建新的spring boot應用程序,在file菜單里選擇new > project。你會看到幾屏內容(如下圖),問的問題和initializr的web應用程序以及spring tool suite類似。
spring boot初始化向導的第二屏要求你提供項目的一些基本信息,比如項目名稱、maven group和artifact、java版本,以及你是想用maven還是gradle來構建項目。描述好項目信息之后,點擊next按鈕就能看到第三屏了,如下圖所示:
第二屏向你詢問項目的基本信息,第三屏就開始問你要往項目里添加什么依賴了。和之前一樣,屏幕里的復選框和spring boot起步依賴是對應的。選完之后點擊next就到了向導的最后一屏:
最后一屏問你項目叫什么名字,還有要在哪里創建項目。一切準備就緒之后,點擊finish按鈕,就能在ide里得到一個空的spring boot項目了。
4. 在spring boot cli里使用initializr
如果你想僅僅寫代碼就完成spring應用程序的開發,那么spring boot cli是個不錯的選擇。然而,spring boot cli的功能還不限于此,它有一些命令可以幫你使用initializr,通過它上手開發更傳統的java項目。
spring boot cli包含了一個init命令,可以作為initializr的客戶端界面。
init命令最簡單的用法就是創建spring boot項目的基線:
1
|
$ spring init |
在和initializr的web應用程序通信后,init命令會下載一個demo.zip文件。解壓后你會看到一個典型的項目結構,包含一個maven的pom.xml構建描述文件。maven的構建說明只包含最基本的內容,即只有spring boot基線和測試起步依賴。你可能會想要更多的東西。
假設你想要構建一個web應用程序,其中使用jpa實現數據持久化,使用spring security進行安全加固,可以用-- dependencies或-d來指定那些初始依賴:
1
|
$ spring init -dweb,jpa,security |
這條命令會下載一個demo.zip文件,包含與之前一樣的項目結構,但在pom.xml里增加了spring boot的web、jpa和security起步依賴。請注意,在-d和依賴之間不能加空格,否則就變成了下載一個zip文件,文件名是web,jpa,security。
現在,假設你想用gradle來構建項目。沒問題,用--build參數將gradle指定為構建類型:
1
|
$ spring init -dweb,jpa,security --build gradle |
默認情況下,無論是maven還是gradle的構建說明都會產生一個可執行jar文件。但如果你想要一個war文件,那么可以通過--packaging或者-p參數進行說明:
1
|
$ spring init -dweb,jpa,security --build gradle -p war |
到目前為止,init命令只用來下載zip文件。如果你想讓cli幫你解壓那個zip文件,可以指定一個用于解壓的目錄:
1
|
$ spring init -dweb,jpa,security --build gradle -p war myapp |
此處的最后一個參數說明你希望把項目解壓到myapp目錄里去。
此外,如果你希望cli把生成的項目解壓到當前目錄,可以使用--extract或者-x參數:
1
|
$ spring init -dweb,jpa,security --build gradle -p jar -x |
init命令還有不少其他參數,包括基于groovy構建項目的參數、指定用java版本編譯的參數,還有選擇構建依賴的spring boot版本的參數。可以通過help命令了解所有參數的情況:
1
|
$ spring help init |
你也可以查看那些參數都有哪些可選項,為init命令帶上--list或-l參數就可以了:
1
|
$ spring init -l |
你一定注意到了,盡管spring init –l列出了一些initializr支持的參數,但并非所有參數都能直接為spring boot cli的init命令所支持。舉例來說,用cli初始化項目時,你不能指定根包的名字,它默認為demo。spring help init會告訴你cli的init命令都支持哪些參數。
5.補充:單純地使用gradle(或maven)來構建spring boot項目
該方式適用于在使用spring initializr構建spring boot項目時連接 https://start.spring.io (換成http協議) 異常報錯的情況。
例如:
這里使用idea創建gradle項目作為示例。首先我們創建一個gradle項目: file->new->project->gradle
我們點擊next,然后填入groupid,artifactid以及version號,點擊next,
這里需要注意:
1.不推薦勾選use auto-import;
2.因為默認從網上下載gradle,非常的慢,所以這里建議勾選: use local gradle distribution,填好本地的gradle home
之后在newproject里面填好項目名稱以及路徑,點擊finish即可。
到這里生成了一個gradle項目,還不是spring boot項目,所以我們需要寫下spring boot的一些基本配置,這里給大家貼一下我的 gradle.build 文件:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
buildscript { repositories { maven { url = 'http://maven.aliyun.com/nexus/content/groups/public/' } } dependencies { classpath( 'org.springframework.boot:spring-boot-gradle-plugin:2.0.3.release' ) } } apply plugin: 'java' apply plugin: 'idea' apply plugin: 'org.springframework.boot' apply plugin: 'io.spring.dependency-management' group = 'com.springboot' version = '1.0.0.0' sourcecompatibility = 1.8 targetcompatibility = 1.8 repositories { maven { url = 'http://maven.aliyun.com/nexus/content/groups/public/' } } dependencies { compile( 'org.springframework.boot:spring-boot-starter-web' ) testcompile( 'org.springframework.boot:spring-boot-starter-test' ) } |
(這里使用的阿里云的鏡像,推薦使用,下載依賴的速度非常之快,原配置的速度太慢太慢)
之后在右邊tool buttons欄里面選擇gradle:
(若沒有則可以在view里面選擇tool buttons即可展開)
然后點擊refresh刷新按鈕。
之后我們就會生成spring boot項目的目錄結構:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
src |-- main |-- java |--com.springboot |---- springbootdemoapplication |----resources |----test |
完成。
二、小結
無論你是用initializr的web界面,在spring tool suite里創建項目,還是用spring boot cli來初始化項目,spring boot initializr創建出來的項目都有相似的項目布局,和你之前開發過的java項目沒什么不同
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。
原文鏈接:http://www.cnblogs.com/chansblogs/p/9293360.html