Spring Boot引導過程
本章將介紹如何在Spring Boot應用程序上執行引導。
Spring Initializer
引導Spring Boot應用程序的一種方法是使用Spring Initializer。 爲此需要訪問Spring Initializer 網頁 www.start.spring.io 並選擇 Build,Spring Boot版本和平臺。 此外還需要提供組,工件和所需的依賴項來運行應用程序。
請注意以下屏幕截圖,其中顯示了添加spring-boot-starter-web
依賴項以編寫REST端點的示例。
提供組,工件,依賴關係,構建項目,平臺和版本後,單擊「Generate Project」按鈕。 將下載zip文件並提取文件。
本節通過使用Maven和Gradle解釋了這些示例。
Maven
下載項目後,解壓縮文件。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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.yiibai</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>demo</name>
<description>Demo project for Spring Boot</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.5.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</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-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
Gradle
下載項目後,解壓縮文件。build.gradle 文件的內容如下所示 -
buildscript {
ext {
springBootVersion = '1.5.8.RELEASE'
}
repositories {
mavenCentral()
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
}
}
apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'
group = 'com.yiibai'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8
repositories {
mavenCentral()
}
dependencies {
compile('org.springframework.boot:spring-boot-starter-web')
testCompile('org.springframework.boot:spring-boot-starter-test')
}
類路徑依賴性
Spring Boot提供了許多Starters來在類路徑中添加jar
。 例如,要編寫Rest Endpoint,需要在類路徑中添加spring-boot-starter-web
依賴項。請遵守下面顯示的代碼以便更好地理解 -
Maven依賴
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
Gradle依賴
dependencies {
compile('org.springframework.boot:spring-boot-starter-web')
}
Main方法
Main方法應該是編寫Spring Boot Application類。 該類應使用[@SpringBootApplication](https://github.com/SpringBootApplication "@SpringBootApplication")
進行註釋。這是啓動Spring啓動應用程序的入口點。以在src/java/main
目錄下找到主類文件。
在此示例中,主類文件位於src/java/main
目錄中,其默認包爲com.yiibai.demo
。 請觀察此處顯示的代碼以便更好地理解 -
package com.yiibai.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
編寫一個Rest端點
要在Spring Boot Application主類文件本身中編寫一個簡單的Hello World Rest 端點,請按照以下步驟操作 -
- 首先,在類的頂部添加
[@RestController](https://github.com/RestController "@RestController")
註釋。 - 使用
[@RequestMapping](https://github.com/RequestMapping "@RequestMapping")
註釋編寫Request URI方法。 - Request URI方法應該返回
Hello World
字符串。 - 現在,Spring Boot Application類文件將如下面的代碼所示 -
package com.yiibai.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@SpringBootApplication
@RestController
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
@RequestMapping(value = "/")
public String hello() {
return "Hello World";
}
}
創建一個可執行的JAR
創建一個可執行的JAR文件,在命令提示符下使用Maven和Gradle命令運行Spring Boot應用程序,如下所示 -
使用maven命令mvn clean install
,如下所示 -
執行命令後,可以在命令提示符下看到 BUILD SUCCESS 的消息,如下所示 -
使用Gradle命令gradle clean build
,如下所示 -
執行命令後,可以在命令提示符中看到BUILD SUCCESSFUL 消息,如下所示 -
用Java運行Hello World
創建可執行JAR文件後,可以在以下目錄中找到它。對於Maven,可以在目標目錄下找到JAR文件,如下所示 -
對於Gradle,可以在build/libs
目錄下找到JAR文件,如下所示 -
現在,使用命令java -jar <JARFILE>
運行JAR文件。 請注意,在上面的示例中,JAR文件名爲demo-0.0.1-SNAPSHOT.jar
:
運行jar文件後,可以在控制檯窗口中看到輸出,如下所示 -
現在,看一下控制檯,Tomcat在端口8080(http)上啓動。 現在,轉到Web瀏覽器並點擊URL => http://localhost:8080/
,可以看到如下所示的輸出 -