1.開發之前
其實springboot只是換了一種代碼組織方式,還是spring的東東,所以要善於接收新的東西,就好像使用配置文件來實例化spring的bean,和使用註解來實例化spring的bean是一樣的。所以,思維觀念要首先改變,從宏觀角度有個理解。以下正式開始開發springboot,這裏使用maven構建。
2.添加springboot依賴
springboot使用 org.springframework.boot 作爲groupId,來管理一系列的starter組件,你只需要聲明需要的starter組件,其餘的依賴全部由springboot來組織管理。通常添加springboot依賴有兩種形式:
1繼承於spring-boot-starter-parent
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.10.RELEASE</version>
</parent>
2使用dependency management
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.1.10.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
3.開發一個controller
controller是spring web的東東,我們需要聲明一個web starter依賴:
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@EnableAutoConfiguration
public class HelloApp {
@RequestMapping("/")
String home() {
return "Hello World!";
}
public static void main(String[] args) {
SpringApplication.run(HelloApp.class, args);
}
}
代碼如上,我們習慣把springboot啓動類放到根包下,作爲全局入口,也便於全包掃描。其中,RestController和RequestMapping都是spring MVC的註解,另一個**
EnableAutoConfiguration**是告訴springboot啓動自動配置,springboot將會根據你聲明的依賴包進行最大化的自動配置,比如我們加了 spring-boot-starter-web springboot幫我們引入了內置的tomcat,spring MVC,自動配置會猜測我們要部署一個 web 項目,執行main方法時默認會啓動tomcat。當然,你可以認爲的排除非必須的依賴,springboot會最大化的自動配置項目。
4.啓動springboot
run上述main函數,可以看到控制檯日誌,springboot在端口8080處啓動了內置的tomcat服務器,我們在瀏覽器訪問http://localhost:8080/,看到如下響應:
5.可執行的jar
現在我們使用maven進行package,打出的包是不能直接運行的,因爲只有自己代碼的class,並沒有把相關依賴打進來。我們需要的是一個可執行的jar包,就如同很久以前的war包一樣,這裏的jar的概念其實是一個 fat jar,所以我們需要把依賴jar還要自己的代碼jar融入到一個新的jar中。這裏需要使用springboot爲我們提供的插件工具,這樣打出的就是一個可以執行的fat jar,可以自行解壓看下jar裏的東東。
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
6.結束語
這就是最簡單的springboot項目,我們就是在這個基礎上添加增刪改查,添加中間件服務,添加業務代碼,其實很簡單。