To-Do Calendar - Day11 建立 Spring Boot 專案

前端先告一段落~這篇開始要來進行後端開發:建立 Spring Boot 專案 + Git 設定,IDE 使用的是 IntelliJ。

開發前端專案的時候是到中途才加上 Git 版本控制,VScode 有整合 Git,透過介面就可以輕鬆管理專案檔案,使用方法參考的是這篇:Github應用教學-結合Microsoft Visual Studio Code編輯器

Spring Boot

Spring Boot 是 Spring 架構的擴充和自動化,它消除了在 Spring 需要進行的 XML 檔案設定,支援用註解的方式輕鬆實現類別的定義與功能,使得開發變得更快、更有效率。

背景

隨著 Node、Ruby、Groovy、PHP 等指令語言的蓬勃發展,Spring 的開發應用就顯得繁瑣了。因為 Spring 使用了大量的 XML 設定檔,設定繁瑣、整合不易、開發和部署的效率不佳,於是 Pivotal Software 公司在 2014 年推出了 Spring Boot。

解決痛點

Spring Boot 的設計初衷是解決 Spring 各版本設定工作過於繁重的問題,簡化初始架設流程、降低開發難度,使開發人員只需專注應用程式的功能與業務邏輯實現,而不用在設定上花費太多時間。

優勢

  • 約定優於配置:Spring Boot 使用約定優於配置的理念,提供了很多已經整合好的方案,以便在開發應用程式時能做到零設定或極簡設定。同時,為了不失靈活性,它也支援自訂操作。

  • 內嵌 Web 容器:Spring Boot 提供了內嵌 Web 容器的功能,使得工程師們可以直接使用 Maven 或 Gradle 等工具,將 Tomcat/JBoss 等 Web 容器打包進 .jar 檔,進而降低了企業部署的難度,提升後續部署的效率。

Info
Spring Boot 內建了50多種 Starter 以便快速使用,可以沿用 Spring Boot 預先定義好的設定,快速的整合其他主流框架。例如要使用 Redis,只需要在 pom.xml 中引入 spring-boot-starter-data-redis 的依賴,Spring Boot 就會自動載入相關套件,並提供 Redis 的操作 API。


Git 設定

這次想在一開始建立後端專案同時也設定好 Git,紀錄步驟如下:

  1. 在 Gitnub 雲端上去創建一個新的 repository

    image

  2. 創建好後把 GitHub 雲端上的 repository,clone 到我們自己的電腦上

    image

  3. 複製 Repository URL 後,接著開 IntelliJ,然後選擇 File > New > Project from Version Control…

    image

  4. 點擊之後 IntelliJ 會跳出一個視窗,把剛剛複製的 Repository URL 去貼在這個 URL 欄位,填好後點擊 clone 按鈕

    image


創建 Spring Boot Project

  1. 打開 Repository Directory 位置的資料夾,叫出隱藏檔,把 .idea 的隱藏資料夾刪掉,只留.git 資料夾

    image

  2. 回到 IntelliJ,選 New Project 創建 Spring Boot Project

    image

Warning
這裡很重要!要將 Spring Boot project 去放在剛剛從 GitHub clone 下來的資料夾裡面(如果出現已存在關掉當前 project,或另開再進行 new project)
  1. 接著在 dependencies 勾選 Web 下的 Spring Web,和這次要使用的 NoSQL 下的 Spring Data MongoDB 後,點擊 Finish 之後,這個專案資料夾裡面的所有程式,就都是在 Git 的版本控制底下了
    image

可以點右下角的 Always Add,讓 IntelliJ 自動幫我們將檔案去加到 Git 的版本控制底下(檔案會變綠色)

Update
Spring Data MongoDB 提供了 MongoTemplate 和 MongoRepository 兩種方式訪問 MongoDB,兩者對 MongoDB 進行增刪改查操作。

Info
Lombok 是一個 Java 庫,它可以通過添加註解的方式,為 Java 類自動插入相應的 Getter/Setter,構造器,equals 方法等。這樣就省去了手動重建程式碼的麻煩,簡化開發,也是程式碼更為簡潔。

  1. 整理下 Spring Boot 專案

    • 刪除多餘的檔案:.mvn 資料夾、HELP.md、mvnw、mvnw.cmd
  2. 修改 pom.xml

    • 指定 Spring Boot 版本
    image
    • 在 spring-boot-starter-test 加上一些設定,避免去用到 JUnit4 的註解
    image
        <exclusions>
            <exclusion>
                <groupId>org.junit.vintage</groupId>
                <artifactId>junit-vintage-engine</artifactId>
            </exclusion>
        </exclusions>
    
    • 修改完成後,最後點擊 m 符號,讓 maven
  3. 創建一個 commit 存檔點

    • 點左邊的 commit 標籤
    image
    • 選中全部檔案,並寫下 commit 訊息,然後按下 Commit 按鈕
    image
    • 點右上角 Push 按鈕,將改動 push 到 GitHub 的雲端上
    image
    • 最後回到 GitHub 確認是否上傳成功就完成了~~
    image

    之後就可以在 IntelliJ 中開發 Spring Boot 的程式,並且使用版本控制,去管理 Spring Boot project 啦!

延伸閱讀

參考資料

comments

comments powered by Disqus