Spring Boot 以「約定優於配置」徹底改變了 Java Web 開發體驗。本文帶你用最少的代碼、最短的時間,跑起第一個 Spring Boot 應用,並理解其核心運作機制。
com.example、Artifact: demo、Package: com.example.demo<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.2.0</version>
<relativePath/>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
</dependencies>
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
@SpringBootApplication = @Configuration + @EnableAutoConfiguration + @ComponentScan
運行與驗證
方式 A:IDE 直接運行主類
右鍵
DemoApplication→ Run 'DemoApplication.main()'方式 B:Maven 命令行
mvn spring-boot:run方式 C:打包後運行
mvn clean package java -jar target/demo-0.0.1-SNAPSHOT.jar驗證結果
瀏覽器訪問:
https://localhost:8080/api/hello → 顯示 Hello, Spring Boot!https://localhost:8080/api/json → 顯示 JSON 回應HTTP Request
│
▼
DispatcherServlet (自動配置)
│
├──→ HandlerMapping → 找到 @Controller/@RestController
│
├──→ HandlerAdapter → 執行方法、參數綁定、返回值處理
│
└──→ ViewResolver / HttpMessageConverter → 渲染響應
| 現象 | 原因 | 解決 |
|---|---|---|
| 端口 8080 被佔用 | 其他進程佔用 | application.yml 配置 server.port: 8081 |
| 404 Not Found | 路徑不匹配 | 檢查 @RequestMapping、@GetMapping 路徑、context-path |
| 依賴下載失敗 | 鏡像源/網絡 | 配置阿里雲 Maven 鏡像、檢查代理 |
| 熱部署不生效 | IDE 未開啟自動編譯 | Settings → Compiler → Build project automatically + Registry → compiler.automake.allow.when.app.running |
application.yml 多環境配置@RestControllerAdvice)Spring Boot 將傳統 Spring 應用的「XML 地獄」簡化為幾個註解與約定目錄結構。從創建專案到看到「Hello World」僅需 5 分鐘,這就是 Spring Boot 的魅力所在。建議動手實踐,體會「約定優於配置」帶來的開發效率飛躍。