Spring 和 SpringBoot 開發流程圖對比
- Spring應用開發流程
- Spring Boot應用開發流程
- Spring Boot核心特性 :
- 極低的學習成本
- 可獨立運行的Spring項目。
- “習慣優於配置”,極大的提高了開發效率。
- 極簡的組件依賴,自動發現與自動裝配。
- 提供運行時的應用監控
- 與分佈式架構和雲計算的天然集成
- Spring Boot目錄結構 :
① 通過Maven創建SpringBoot項目
- 配置 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.oym</groupId>
<artifactId>my_springboot</artifactId>
<version>1.0-SNAPSHOT</version>
<parent>
<artifactId>spring-boot-parent</artifactId>
<groupId>org.springframework.boot</groupId>
<version>2.1.7.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.1.7.RELEASE</version>
</plugin>
</plugins>
</build>
</project>
- 然後依次創建相應的包,文件
② 重點: 通過IDEA提供的 Spring Initializr 進行創建
選擇 Web -> Spring Web 生成的文件和配置,和上面 Maven 配置的一模一樣(並附帶了JUnit依賴)
Spring Boot 入口類
- 入口類命名通常以 *Application 結尾
- 入口類上增加 @SpringBootApplication 註解
- 利用 SpringApplication.run() 方法啓動應用
Spring Boot 啓動流程
Spring Boot中的常用配置 (在application.properties中更改配置)
- application.properties 樣例配置如下:
#更改端口號
server.port=80
#更改訪問頁面應用上下文
server.servlet.context-path=/myspringboot
#配置日誌打印位置
logging.file.path=o:/my_springboot02.log
#debug(調試日誌) - > info(默認) -> warn(警告信息) - > error(異常類) - > fatal(災難性後果) (等級依次遞增)
logging.level.root=info
debug=false
# debug爲 true時,會自動調試,並打印調試信息
#配置數據庫相關信息
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=666666
!!! 出現問題:直接用 application.properties 配置各種信息會造成代碼易出錯,不易維護
解決方案如下:
Spring Boot 支持兩種配置文件
- 屬性文件: application.properties
- YAML格式: application.yml
YAML的語法
YAML是一種簡潔的非標記語言。YAML以數據爲中心,使用空白,縮進,分行組織數據,從而使
得表示更加簡潔易讀。
- YAML的格式語法
- 標準格式: key:(空格)value
- 使用空格代表層級關係,以 “:” 結束
- application.yml 樣例配置如下:
debug: true
#logging.level.root
#logging.file
logging:
level:
root: info
file:
path: o:/my_springboot.log
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/test
data-username: root
data-password: 666666
Spring Boot自定義配置項
- Spring Boot允許我們自定義應用配置項,在程序運行時允許動態加載,這爲程序提供了良好的可維護性。
- 在實際項目開發中,我們通常將項目的自定義信息放在配置文件中。可通過 @Value獲取指定配置信息。
Spring Boot 環境配置文件
- Spring Boot可針對不同的環境提供不同的 Profile文件。
- Profile文件的默認命名格式爲 application-{env}.yml
- 使用spring.profiles.active選項來指定不同的profile。
例如 :
在 application.yml 中選擇 profile文件
打包與運行
- 利用 Maven 的 package 命令,生成可獨立運行的 Jar 包。
- 利用 java -jar xx.jar 命令啓動 Spring Boot 應用。
- Jar 包可自動加載同目錄的 application 配置文件。
- 未完待續。。。