Spring Boot 簡介
Spring Boot 是 Spring 家族中的一個全新的框架,它用來簡化 Spring 應用程式的創建和開發程序,也可以說 Spring Boot 能簡化我們之前采用 SpringMVC + Spring + MyBatis 框架進行開發的程序,
在以往我們采用 SpringMVC + Spring + MyBatis 框架進行開發的時候,搭建和整合三大框架,我們需要做很多作業,比如配置 web.xml,配置 Spring,配置 MyBatis,并將它們整合在一起等,而 Spring Boot 框架對此開發程序進行了革命性的顛覆,完全拋棄了繁瑣的 xml 配置程序,采用大量的默認配置簡化我們的開發程序,
Spring Boot 入門
創建一個 Module,選擇型別為 Spring Initializr 快速構建

設定 GAV 坐標及 pom 配置資訊

選擇 Spring Boot 版本及依賴
會根據選擇的依賴自動添加起步依賴并進行自動配置

設定專案名稱、專案路徑

提示:點擊 Finish,如果是第一次創建,在右下角會提示正在下載相關的依賴

Show all

專案創建完畢,如下

專案結構

- static:存放靜態資源,如圖片、CSS、JavaScript 等
- templates:存放 Web 頁面的模板檔案
- application.properties/application.yml 用于存放程式的各種依賴模塊的配置資訊,比如 服務埠,資料庫連接配置等
對 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>
<!--繼承 SpringBoot 框架的一個父專案,所有自己開發的 Spring Boot 都必須的繼承-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.1.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<!--當前專案的 GAV 坐標-->
<groupId>com.bjpowernode.springboot</groupId>
<artifactId>002-springboot-springmvc</artifactId>
<version>1.0.0</version>
<!--maven 專案名稱,可以洗掉-->
<name>002-springboot-springmvc</name>
<!--maven 專案描述,可以洗掉-->
<description>Demo project for Spring Boot</description>
<!--maven 屬性配置,可以在其它地方通過${}方式進行參考-->
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<!--SpringBoot 框架 web 專案起步依賴,通過該依賴自動關聯其它依賴,不需要我們一個一個去添加了
-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--SpringBoot 框架的測驗起步依賴,例如:junit 測驗,如果不需要的話可以洗掉-->
<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>
<!--SpringBoot 提供的打包編譯等插件-->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
對 SpringBoot 專案結構進行說明

- mvn | mvnw | mvnw.cmd:使用腳本操作執行 maven 相關命令,國內使用較少,可洗掉
- .gitignore:使用版本控制工具 git 的時候,設定一些忽略提交的內容
- static|templates:后面模板技術中存放檔案的目錄
- application.properties:SpringBoot 的組態檔,很多集成的配置都可以在該檔案中進行配置,例如:Spring、springMVC、Mybatis、Redis 等,目前是空的
- Application.java:SpringBoot 程式執行的入口,執行該程式中的 main 方法,SpringBoot就啟動了
創建一個 Spring MVC 的 SpringBootController
SpringBootController 類所在包:com.lcz.springboot.controller
package com.lcz.springboot.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class SpringBootController {
@RequestMapping(value = "/springBoot/say")
public @ResponseBody String say() {
return "Hello,springBoot!";
}
}
注意:新創建的類一定要位于 Application 同級目錄或者下級目錄,否則 SpringBoot 加載不到,

例如Application在springboot目錄下,那么你新創建的類只能在springboot目錄下,可以直接在springboot目錄下也可以是springboot目錄下的其它目錄,一句話來說:只要在springboot目錄內就可以讀取到!
在 IDEA 中右鍵,運行 Application 類中的 main 方法

通過在控制臺的輸出,可以看到啟動 SpringBoot 框架,會啟動一個內嵌的 tomcat,埠號為 8080,背景關系根為空

在瀏覽器中輸入http://localhost:8080//springBoot/say

入門案例分析
- Spring Boot 的父級依賴 spring-boot-starter-parent 配置之后,當前的專案就是 SpringBoot 專案
- spring-boot-starter-parent 是一個 Springboot 的父級依賴,開發SpringBoot 程式都需要繼承該父級專案,它用來提供相關的 Maven 默認依賴,使用它之后,常用的 jar包依賴可以省去 version 配置
- Spring Boot 提供了哪些默認 jar 包的依賴,可查看該父級依賴的 pom 檔案
- 如果不想使用某個默認的依賴版本,可以通過 pom.xml 檔案的屬性配置覆寫各個依賴項
通過 pom.xml 檔案的屬性配置覆寫各個依賴項,比如覆寫 Spring 版本:
<properties>
<spring-framework.version>5.0.0.RELEASE</ spring-framework.version >
</properties>
- @SpringBootApplication 注解是 Spring Boot 專案的核心注解,主要作用是開啟Spring 自動配置,如果在 Application 類上去掉該注解,那么不會啟動SpringBoot程式
- main 方法是一個標準的 Java 程式的 main 方法,主要作用是作為專案啟動運行的入口
- @Controller 及 @ResponseBody 依然是我們之前的 Spring MVC,因為 Spring Boot的里面依然是使用我們的 Spring MVC + Spring + MyBatis 等框架
Spring Boot 的核心組態檔
Spring Boot 的核心組態檔用于配置 Spring Boot 程式,名字必須以 application 開始
核心配置格式
.properties 檔案(默認采用該檔案)
通過修改 application.properties 組態檔,在修改默認 tomcat 埠號及專案背景關系件根
鍵值對的 properties 屬性檔案配置方式:
#設定內嵌 Tomcat 埠號
server.port=9090
#配置專案背景關系根
server.servlet.context-path=/003-springboot-port-context-path
配置完畢之后,啟動瀏覽器測驗

頁面顯示結果

.yml 檔案
yml 是一種 yaml 格式的組態檔,主要采用一定的空格、換行等格式排版進行配置,yaml 是一種直觀的能夠被計算機識別的的資料序列化格式,容易被人類閱讀,yaml 類似于 xml,但是語法比 xml 簡潔很多,值與前面的冒號配置項必須要有一個空格, yml 后綴也可以使用 yaml 后綴

注意:當兩種格式組態檔同時存在,使用的是.properties 組態檔,為了演示 yml,可以先將其改名,重新運行 Application,查看啟動的埠及背景關系根

效果

多環境配置
在實際開發的程序中,我們的專案會經歷很多的階段(開發->測驗->上線),每個階段的配置也會不同,例如:埠、背景關系根、資料庫等,那么這個時候為了方便在不同的環境之間切換,SpringBoot 提供了多環境配置,具體步驟如下
為每個環境創建一個組態檔,命名必須以 application-環境標識.properties|yml

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/301030.html
標籤:java
