前言
Spring Boot 的好處自然不必多說,對於想要從事 Java 工作的朋友們來說,可謂是必學的技能。
在我看來,它的優勢就是多快好省。
- 功能多,很多常用的能力都有集成;
- 接入快,簡單的幾行代碼就能完成接入;
- 維護好,社區活躍度高,有了問題能夠第一時間找到解答;
- 省錢,免費開源項目自然是個人或者企業的最愛。
接下來詳細講下 Spring Boot 的接入教程,方便剛接觸這項技術的讀者朋友學習。
相關依賴
技術棧:
- Java 8
- Maven 3
- Spring Boot 2.4.2
環境:
- 操作系統:MacOS(Windows 也類似)
- IDE(集成開發環境):IntelliJ IDEA 旗艦版 2020.1 版本
Spring Boot 項目初始化
有兩種方式:
- 官網打包
- IDE 生成
官網打包
訪問官網:https://start.spring.io/。
指定項目構建方式 Maven,選擇語言 Java。
Spring Boot 選擇最新穩定版本 2.4.2,項目元數據填寫組織和項目相關信息。
右側依賴選擇自己會用到的包,這裏我選擇了 Lombok 和 Spring Web,前者幫我們少寫代碼,後者支持 web 頁面訪問,方便我做演示。
然後點擊底下的 GENERATE 按鈕,網站會自動生成 zip 包並且下載到本地。
解壓後,我們就可以看到如下的目錄結構。HELP 是幫助文檔,mvnw 是程序啓動命令文件,pom 放置了項目依賴,src 包含了項目的源代碼。
IDE 生成
接入插件:
- 進入 IntelliJ IDEA 的偏好設置,在 Plugins 裏搜索 Spring Boot,方框框上打鉤,使插件生效。
- 按提示重啓 IDE,即可使用。
進入 IntelliJ IDEA,點擊創建新項目。
選擇 Spring Initializr,指定項目的 Java SDK,選擇默認的啓動方式,該方式需要聯網,點擊下一步。
默認需要填寫以下信息,如圖:
我改了下名字,叫 course,表明是教程網站的一個項目。同時我把默認的 Java 版本降到了 8,因爲這個版本我比較常用。
點擊下一步,我們看到的是添加依賴的頁面,支持關鍵詞搜索,你可以選取自己需要的依賴包。實際效果和官網頁面是一致的,這裏我依然選擇了 Lombok 和 Spring Web。
點擊下一步,設置項目名和路徑,名稱默認取之前 Maven 設置裏的 artifact 的值,我一般不會改。
點擊完成,IDE 就幫我們建好了 Spring Boot 的項目,文件結構和我們官網下載的包是一致的。
項目會爲我們生成一個應用程序啓動入口,選中 main 方法運行,這個 Spring Boot 程序就跑起來啦。
以下是啓動日誌記錄,右上角的紅色方塊代表運行中。再點下紅色方塊,控制檯就會提示程序退出,右上角方塊也會變灰。
除了利用 IDE 啓動 Spring Boot 外,還可以使用項目生成的命令行工具。定位到項目的家目錄下,執行以下命令(MacOS/Linux):
./mvnw spring-boot:run
Windows 用戶執行以下命令:
mvnw spring-boot:run
會看到這個 Spring Boot 項目從構建到編譯再到部署的全過程。
如果想要終止應用程序的話,Ctrl + C 即可。
剛纔的演示過程是沒有涉及到 Web 頁面的,那如果想看到頁面的訪問效果,該怎麼做呢?
添加 Web 代碼
Web 相關的依賴我們在建項目的時候已經引入了,因此只需要增加相關的代碼即可。
首先定位到文件 CourseApplication.java,然後在啓動類上增加註解 @RestController,同時添加一個 web 訪問的方法。
@SpringBootApplication
@RestController
public class CourseApplication {
public static void main(String[] args) {
SpringApplication.run(CourseApplication.class, args);
}
@GetMapping("/hello")
public String hello(@RequestParam(value = "name", defaultValue = "World") String name) {
return String.format("Hello %s!", name);
}
}
此時啓動 Spring Boot,然後打開瀏覽器訪問 http://localhost:8080/hello,就可以看到默認的輸出了。爲什麼端口是 8080 呢?你回去看下啓動日誌的截圖,會發現項目用了 Tomcat 的 Web 服務器,HTTP 的初始化端口是 8080。
當然也可以帶參數去訪問這個 Get 請求,比如下面這種訪問。
端口我們也可以自己指定,放到應用配置文件 application.properties 中即可。
# 默認的 8080 修改爲 9090
server.port=9090
重啓程序後,日誌打印發生了變化,瀏覽器訪問同樣要用新配置的端口才能訪問成功。
好了,快速構建 Spring Boot 應用的介紹就到這裏,如果對你也有用的話,可以給我點個贊,點個在看,也可以分享給身邊朋友,非常感謝讀者朋友。
我是蝸牛,正在互聯網上瘋狂爬行,下期見。