114後端集訓 - HackMD

BIRC後端專案開發流程 - HackMD

換檔教學


<aside> 🍔

目錄

</aside>

版本確認

🍃 後端開發

Untitled


./gradlew bootRun // 單模組Spring Boot執行

下面為各大章節重點節錄

./gradlew.bat build -x test //換檔 指令

第一章 - Spring Boot & API

前往官方工具建立專案https://start.spring.io/,配置如下圖。

按下 Generate 下載專案zip

image.png

並編輯 DemoApplication.java 如下

package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
@RestController
public class DemoApplication {
	public static void main(String[] args) {
		SpringApplication.run(DemoApplication.class, args);
	}
	@GetMapping("/hello")
	public String hello(@RequestParam(value = "name", defaultValue = "World") String name) {
		return String.format("Hello %s!", name);
	}
}

Gemini_Generated_Image_6rcnmp6rcnmp6rcn.png

Annotation 註解


第二章 - RESTful CRUD & Util

RESTful API 是Roy Thomas Fielding 博士於2000提出的一種 API 設計風格,以實現無狀態(Stateless)的 CRUD 操作,常用於前後端分離、微服務架構,資料格式多為 JSON。

RESTful API在表示上會用 **Verb (動詞) + Noun (名詞)**來表示比如說 **GET**/users 表示 從伺服器拿users相關資料

註解 位置 適用場景 範例
@RequestParam Query String 篩選、排序、分頁 /search?q=java
@PathVariable URL Path 指定特定 ID 資源 /orders/101
@RequestBody Request Body 新增或修改複雜資料 {"name":"A",...}
@RequestHeader Headers 傳送驗證 Token 或語系 Authorization: ...

<aside> 🍃

專案中常見的util可以下載: https://github.com/Chen11111112/springboot-util.git

</aside>


第三章 - Service & Log

在實作Service時,我們習慣使用**Interface + Impl**,即 介面與實作分離 的方式,這有助於 解耦單元測試 (Mocking)

等級 說明 使用場景
DEBUG 關鍵變數的值 用於開發階段確認邏輯是否正確。
INFO 系統重要節點 例如:系統啟動成功、收到一筆新訂單。
WARN 潛在的問題 雖然不影響運行,但可能有隱患(如:硬碟空間快滿了)。
ERROR 發生錯誤 程式出錯、拋出異常,必須立即關注。

Rollback : Transaction Management 事務管理@Transactional 「要麼全部成功,要麼全部失敗」。


第四章 - Data Layer ****