?前言:
文章是系列學習筆記第9篇。基于黑馬程序員課程完成,是筆者的學習筆記與心得總結,供自己和他人參考。筆記大部分是對黑馬視頻的歸納,少部分自己的理解,微量ai解釋的內容(ai部分會標出)。
筆記1:【SSM】Spring學習筆記1: IoC的XML配置-CSDN博客?對應黑馬課程P1~P20的內容。
筆記2:【SSM】Spring學習筆記2:注解配置bean-CSDN博客? 對應黑馬課程P21~P27
筆記3:【SSM】Spring學習筆記3:Spring整合MyBatis和Junit-CSDN博客?對應黑馬課程P28~P30
筆記4:【SSM】Spring學習筆記4:Spring的AOP編程-CSDN博客?對應黑馬課程P31~39
筆記5:【SSM】Spring學習筆記5:Spring事務-CSDN博客?對應黑馬課程P40~42
筆記6:??【SSM】Spring學習筆記6:SpringMVC入門-CSDN博客?對應黑馬課程P43~58
筆記7: 【SSM】SpringMVC學習筆記7:前后端數據傳輸協議和異常處理-CSDN博客?對應黑馬課程P59~65
筆記8:【SSM】SpringMVC學習筆記8:攔截器-CSDN博客?對應黑馬課程P71~74
筆記9: (此篇) 對應黑馬課程P90~101
1. 快速案例
新建springboot工程(intell IDEA有集成)
新建好工程之后,直接寫一個controller類
@RestController
@RequestMapping("/book")
public class BookController {@GetMapping("/{id}")public String getBook(@PathVariable int id) {return "hi spring boot";}
}
運行新建工程之后自動寫好的類
無需額外配置,此時tomcat服務器已經啟動,剛剛寫好的controller類正確運行。
不通過ide創建spring boot項目的話,可以從spring官網創建項目,到時候會提供一個創建好項目的壓縮包。
2. spring boot項目快速啟動
將構建好的spring boot打包成一個jar包,發送給前端人員,前端人員就能無需配置運行環境的情況下運行構建好的spring boot程序。
注意,如果沒有以下插件,打包出來的jar包無法直接運行。
3.springboot?
3.1 起步依賴
構建的springboot項目會繼承自spring-boot-starter-parent項目,而spring-boot-starter-parent又會繼承自spring-boot-dependencies,這兩個項目是springboot官方提供的項目,用于依賴的版本控制。簡單的說,這兩個項目中提供了幾乎所有常用依賴的適配版本的可選依賴,在我們的項目中如果需要使用某個依賴直接使用groupId和artifactId即可,無需配置版本號。這種設計減少了各個依賴之間版本沖突帶來的問題。
3.2 引導類
就是創建SpringBoot項目的時候自動生成的類,這個類是程序的入口。這個類無需手動創建。
@SpringBootApplication
public class MyspringbootApplication {public static void main(String[] args) {SpringApplication.run(MyspringbootApplication.class, args);}}
4. Springboot端口配置
springboot所有配置文件都叫 application.XXX
application.properties配置
application.yml配置
注意該文件配置格式,在具體的值前面有空格。
application.yaml配置
它的格式和.yml一模一樣
優先級
如果同時使用以上三種文件同時配置,優先級:
application.properties>application.yml>application.yaml
ps:
如果在配置文件中書寫的時候沒有任何提示,可能是以內ide沒有將該文件視為工程的配置文件。需要到項目結構中設置。
5. yaml配置文件
5.1 書寫格式
逐漸在市場中占主流地位
5.2 使用
方法1
方法2
使用自動裝配的方式,直接將配置文件中的信息放到environment對象里面。
方法3
自定義對象封裝數據。使用@Component注解將該類配置成bean,交給Spring管理。
使用@ConfigurationProperties注解指明這個類應該與配置文件中哪個信息對應。
5.3 多環境配置
.yml
# 設置啟用的環境
spring:profiles:active: test---
# 開發
spring:profiles: dev
server:port: 80---
# 生產
spring:profiles: pro
server:port: 81---
# 測試
spring:profiles: test
server:port: 82
命令行運行jar包的時候指定運行環境
同理,這種格式適用于各中參數的臨時覆蓋,包括配置文件中的自定義參數
6. maven 和SpringBoot多環境配置兼容
要需要保證有以下插件,maven中的屬性才能被配置文件讀取
7. 在jar外面的配置文件
在jar包的同級目錄下如果有一個application.yml配置文件,jar包運行的的時候會使用該配置文件作為配置信息。如果jar包同級目錄下有config/application.yml,則config/application.yml優先級更高,將使用它作為配置信息。