Spring Boot 入門教程 | 圖文講解


Spring Boot 入門教程

目錄

一、Spring Boot 是什么

二、為什么要使用 Spring Boot

三、快速入門

  • 3.1 創建 Spring Boot 項目
  • 3.2 項目結構
  • 3.3 引入 Web 依賴
  • 3.4 編寫第一個接口
  • 3.5 啟動程序,驗證效果

四、總結

五、GitHub 示例代碼

一、Spring Boot 是什么

以下截圖自 Spring Boot 官方文檔

什么是Spring Boot

翻譯整理一下,內容如下:

Spring Boot 是基於 Spring 框架基礎上推出的一個全新的框架, 旨在讓開發者可以輕松地創建一個可獨立運行的,生產級別的應用程序。

基於 Spring Boot 內部的自動化配置功能,開發者可以在"零"配置, 或者只需要添加很少的配置,就可以進行日常的功能開發。

二、為什么要使用 Spring Boot

用權威說話,下圖同樣截圖自 Spring Boot 官方文檔

為什么要使用Spring Boot

我們再來翻譯整理一下,內容如下:


  • 1、能夠輕松、方便地創建一個 Spring 應用;
  • 2、直接使用內嵌的 Tomcat, Jetty, Undertow 容器(無需再手動安裝容器,通過部署 WAR 包的方式);
  • 3、內部自動管理各種 Jar 包的版本依賴關系,再也不用為版本沖突而煩惱啦;
  • 4、自動化配置 Spring 相關功能,以及第三方庫;
  • 5、提供諸如指標,健康檢查, 外部化配置等功能;
  • 6、"零配置",再也不需要手寫地獄般的 XML 配置了;

怎么樣,看了 Spring Boot 這些強大的特性以后,是不是開始躍躍欲試了,接下來,讓我們快速入門 Spring Boot 吧 !

PS: 正由於 Spring Boot 以上特性,才得以使它成為構建微服務架構的基礎組件。

三、快速入門

3.1 創建 Spring Boot 項目

3.1.1 通過 Spring Initializr 來創建

Spring Initializr

默認情況下,Spring Initializr 生成的項目是通過 Maven 來構建的,開發語言為 Java, 版本用的最新的發行版,打包方式為 Jar, 使用的 Java 版本為 1.8,小伙伴們這里要注意一下!

  • 2、生成項目, 導入到開發工具中

點擊 Generate Project 按鈕,下載的 Demo.zip , 解壓后,導入到開發工具中,這里筆者使用的是 IntelliJ IDEA。

  • 3、File -> New -> Model from Existing Source, 可參考下圖:

導入Spring Boot項目

  • 4、彈出框中,選中您的解壓后的文件夾 -> OK -> 選擇通過 Maven 的方式來導入項目:

通過Maven的方式來導入Spring Boot項目

  • 5、一路點擊 Next -> Finished;

至此,通過 Spring Initializr 網站來創建應用,並導入到了我們的開發工具 IntelliJ IDEA 中就成功了。

PS: 如果您使用的是 Eclipse, 方式是 Import -> Existing Maven Projects -> Next -> 選擇解壓后的文件夾 -> Finsh

3.1.2 通過 IntelliJ IDEA 來創建應用

其實,我們還可以直接通過 IntelliJ IDEA 來創建一個 Spring Boot 項目,因為 IntelliJ IDEA 內置了 Spring Initializr,接下來,通過圖文,讓我們來看下要如何一步一步操作:

  • 1、File -> New -> Project, 跳出新建項目彈出框:

新建Spring Boot彈出框

  • 2、點擊 Next,彈出填寫 maven 項目的需要的相關信息,這里我們用默認的就好了,繼續點擊 Next;
  • 3、再次彈出框,這里可以勾選開發中需要的 Starter 的組件, 如 Web, Redis 等,我們這里暫時不勾,后面通過手動添加的方式, 繼續點擊 Next -> Finish;

3.2 項目結構

項目創建成功后,可以看到結構如下:

Spring Boot項目結構

共分為三個主要的文件夾:

  • src/mail/java: 存放 Java 源碼,包括啟動程序的入口;
  • src/mail/resources: 資源目錄,用於放置相關配置文件,靜態文件 html, css 等;
  • src/test/java: 存放單元測試類

3.3 引入 Web 依賴

pom.xml 文件中添加 web 依賴:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

PS: 不用手動去指定版本號,因為 Spring Boot 內部已經維護相關 Jar 包的依賴關系。

3.4 編寫第一個接口

com.example.demo 包下添加 controller 包,用來存放所有對外部開發的接口, 完成后,創建 HelloController.java 類, 添加一個 /hello 接口:

@RestController
public class HelloController {

    @GetMapping("/hello")
    public String hello() {
        return "Hello, Spring Boot !";
    }
}

添加 @RestController 注解,表示此類中所有定義的接口均為 RESTFul 風格,也就是說返參均為 JSON 格式的。

@GetMapping("/hello") 表示定義一個 GET 請求的接口,路徑為 /hello

3.5 啟動程序,驗證效果

啟動Spring Boot

根據圖示,點擊按鈕,來啟動 Spring Boot Web 程序, 查看控制台輸出:

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v2.1.4.RELEASE)

2019-04-14 19:57:59.795  INFO 3680 --- [           main] com.example.demo.DemoApplication         : Starting DemoApplication on 192.168.0.100 with PID 3680 (/Users/a123123/Work/IdeaProjects/demo/target/classes started by allen-jiang in /Users/a123123/Work/IdeaProjects/demo)
2019-04-14 19:57:59.798  INFO 3680 --- [           main] com.example.demo.DemoApplication         : No active profile set, falling back to default profiles: default
2019-04-14 19:58:00.666  INFO 3680 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8080 (http)
2019-04-14 19:58:00.689  INFO 3680 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2019-04-14 19:58:00.689  INFO 3680 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.17]
2019-04-14 19:58:00.756  INFO 3680 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2019-04-14 19:58:00.757  INFO 3680 --- [           main] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 920 ms
2019-04-14 19:58:00.978  INFO 3680 --- [           main] o.s.s.concurrent.ThreadPoolTaskExecutor  : Initializing ExecutorService 'applicationTaskExecutor'
2019-04-14 19:58:01.183  INFO 3680 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''
2019-04-14 19:58:01.186  INFO 3680 --- [           main] com.example.demo.DemoApplication         : Started DemoApplication in 1.678 seconds (JVM running for 2.176)

當控制台日志中輸出了 Tomcat started on port(s): 8080 (http) with context path ''時,表示內嵌的 Tomcat 容器已經啟動成功了,端口為 8080 !

接下來,我們在瀏覽器上訪問 http://localhost:8080/hello 接口,驗證一下,接口是否能夠正常訪問:

請求 /hello 接口

返回了我們想要的 Hello, Spring Boot ! 字符串,接口訪問正常,大工告成!

四、總結

本文中,我們首先了解了什么是 Spring Boot, 以及Spring Boot 的相關特性,最后我們手把手學習了如何搭建一個 Spring Boot 項目,並編寫了第一個接口且訪問成功。

通過實際操作,真切地感受到了 Spring Boot 的魅力所在!老鐵,雙擊 666!

五、GitHub 示例代碼

https://github.com/weiwosuoai/spring-boot-tutorial/tree/master/demo

六、Reference

贈送 | 面試&學習福利資源

最近在網上發現一個不錯的 PDF 資源《Java 核心面試知識.pdf》分享給大家,不光是面試,學習,你都值得擁有!!!

獲取方式: 關注公眾號: 小哈學Java, 后台回復 資源,既可獲取資源鏈接,下面是目錄以及部分截圖:

福利資源截圖

福利資源截圖

福利資源截圖

福利資源截圖

福利資源截圖

福利資源截圖

福利資源截圖

重要的事情說兩遍,獲取方式: 關注公眾號: 小哈學Java, 后台回復 資源,既可獲取資源鏈接 !!!

歡迎關注微信公眾號: 小哈學Java

小哈學Java


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM