--- lang: zh tags: spring, java --- # Spring Boot 基本架設 ## 環境架設 [官方教學](https://spring.io/quickstart) + 照著教學第一步把 spring boot 的專案抓下來,先跑看看下面的指令 `mvnw spring-boot:run` + 可能需要設定一下 JAVA_HOME 的參數設定到 jdk 的目錄下,記得 jdk 的版本要對 + 如果跑完是跳 build success 沒有啟動 server 的話 在 POM 檔 dependencies 加入 ```xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> ``` server 啟動預設是在 8080 port,可以到 http://localhost:8080 看有沒有東西 預設啟動 port 可以在 `src/main/resources/application.properties` 更改,如下 ``` server.port = 9487 ``` 接著看 code ```java 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); } } ``` 基本上就是透過 annotation 來設定路徑跟參數。 最後的 POM 檔長這樣 ```xml= <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.3.4.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.example</groupId> <artifactId>demo</artifactId> <version>0.0.1-SNAPSHOT</version> <name>demo</name> <description>Demo project for Spring Boot</description> <properties> <java.version>11</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <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> <exclusions> <exclusion> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> </exclusion> </exclusions> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project> ``` 如果像我一樣用 IntelliJ 開發的話,每次更改 POM 檔就會出現 Maven import change 的選項,改好記得要按,才會變更依賴 如果設定都對的話,也可以直接從 IDE 去 Run main ## Build 可以 build 成 jar 或 war,只要在 POM 裡加上 ```xml= <package>jar</package> ``` 然後執行 `mvnw clean package` 最後檔案會輸出在 target 下
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up