5分鐘入手Spring Boot

環境準備

  1. Java 8
java -version
#我使用的是openjdk
openjdk version "1.8.0_191-1-redhat"
...
  1. Maven 3
mvn -v
Apache Maven 3.5.4
...

創建Maven項目

  1. 執行mvn命令:
mvn -B archetype:generate -DarchetypeGroupId=org.apache.maven.archetypes -DgroupId=com.mycompany.sample -DartifactId=spring-boot-demo
創建Maven項目
  1. 查看新創建的Maven項目:


    查看項目
  2. 查看App類;
package com.mycompany.sample;

/**
 * Hello world!
 */
public class App {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}
  1. 查看pom.xml;
<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 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.mycompany.sample</groupId>
  <artifactId>spring-boot-demo</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>spring-boot-demo</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>

以上是默認Maven項目的樣子,test就先不介紹了。

將Maven項目變成Spring Boot項目

  1. 添加Spring Boot聲明;
#在pom.xml的根節點添加以下內容:
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.3.1.RELEASE</version>
    <relativePath/>
</parent>
  1. 增加Web支持(為后續開發API做準備);
#在pom.xml的dependencies點下添加以下內容:
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>
#此處不用再指定版本,默認跟spring-boot-starter-parent一致,即2.3.1.RELEASE,Spring Boot相關的依賴是一整套的。
#pom.xml整體樣子:
<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 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.mycompany.sample</groupId>
  <artifactId>spring-boot-demo</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>spring-boot-demo</name>
  <url>http://maven.apache.org</url>

  <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.3.1.RELEASE</version>
    <relativePath/>
  </parent>

  <repositories>
    <repository>
     #此處可以使用國內Maven鏡像,如aliyun鏡像、清華大學鏡像等
    </repository>
  </repositories>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
  </dependencies>
</project>

  1. 修改App類;
  • 在App類上添加注解@SpringBootApplication;
  • 在main方法中添加一行代碼;
#整體代碼
package com.mycompany.sample;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

/**
 * Hello world!
 */
@SpringBootApplication
public class App {
    public static void main(String[] args) {
        SpringApplication.run(App.class, args);
    }
}

到此為止,我們已經建立了Spring Boot應用了,整個項目是可以運行的!
只不過在項目中我們還沒有開發API,不能通過瀏覽器訪問。

開發API

  1. 創建controller包,包名com.mycompany.sample.controller;
  2. 創建Controller,如HelloWorldController.java;


    Controller

    (注:controller一般就是指寫API的地方;controller及其他的包、類一般放在App.java同級或下級目錄下)

  3. 編寫Controller邏輯;
package com.mycompany.sample.controller;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

/**
 * @author : dylanz
 * @since : 06/29/2020
 **/
@RestController
public class HelloWorldController {
    @GetMapping("/sayHello")
    public String sayHello() {
        return "Hello World!";
    }

    @GetMapping("/sayHello/{name}")
    public String sayHelloWithNameInPath(@PathVariable String name) {
        return "Hello " + name;
    }

    @GetMapping("/hello")
    public String sayHelloWithNameInRequestParam(@RequestParam("name") String name) {
        return "Hello " + name;
    }
}

啟動項目,客戶端請求API

  1. 啟動Spring Boot應用;
  • IDEA中直接啟動App.java;


    啟動項目 1

    啟動Spring Boot應用

    (注:我們會看到,啟動App類時,項目自動啟動了tomcat,Spring Boot已經幫我們集成好tomcat了,多么美好的一件事情!?。。?/p>

  1. 瀏覽器中訪問API;

碼字不容易,點贊需積極

謝謝?。?!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。