1、springboot簡單介紹
阿新 • • 發佈:2020-08-28
版本介紹
通過官網網址:https://spring.io/projects/spring-boot 檢視版本,如下
版本名稱 | 意義 |
---|---|
SNAPSHOT | 快照版,就是還在開發階段,不沒有經過大量的測試,穩定性差,不建議使用 |
CURRENT | 最新版,但是不一定是穩定的版本 |
GA(General Avallability) | 正式釋出的版本,只有GA標記的版本他是最穩定的 |
SpringBoot配置檔案的存放位置
配置檔案存放位置
- 當前專案根目錄中
- 當前專案根目錄下的一個/config子目錄中
- 專案的resource即classpath根路徑中
- 專案的resources即classpath跟路徑下的/config目錄中
SpringBoot有兩種配置檔案格式:
- application
- yaml
application和yaml兩種格式同時存在,application的優先順序比yaml高;
兩個配置檔案存在同樣的屬性時,則由配置檔案的順序決定,先執行的配置檔案的屬性會被使用,而後執行的配置檔案裡的相同的屬性,則不會執行,並且不會覆蓋之前的屬性值。
佔位符語法
佔位符作用
- “${}”中可以獲取框架提供的方法中的值,例如:random.int等
- 佔位符可以獲取配置檔案中的鍵的值賦給另一個鍵作為值。
框架提供的方法有
- ${random.value} 類似uuid的隨機數,沒有“-”連線
- ${random.int} 隨機取整形範圍內的一個值
- ${random.long} 隨機取長整形範圍內的一個值
- ${random.long(100,200)} 隨機生成長整型 100-200 範圍內的一個值
- ${random.uuid} 生成一個uuid,有短槓連線
- ${random.int(10)} 隨機生成一個10以內的數
- ${random.int(100, 200)} 隨機生成一個100-200範圍以內的數
獲取配置檔案中的鍵的值賦給另一個鍵作為值
SpringBoot的bootstrap配置檔案
- SpringBoot有兩種上下文物件:application和bootstrap
- bootstrap是應用程式的父上下文,所以bootstrap載入優先於application
- 主要用於從額外的資源來載入配置資訊或在本地外部配置檔案中解密屬性
- application和bootstrap這兩個上下文公用同一環境,存放的位置相同,同樣可以用yaml格式
- bootstrap是任何Spring應用程式的外部屬性的來源
- 預設不能被本地相同配置覆蓋
- 由父ApplicationContext載入
@SpringBootApplication註解簡單介紹
@SpringBootApplication
- 是SpringBoot的啟動類
- 等同於@Configuration + @EnableAutoConfiguration + @ComponentScan的組合。
@SpringBootConfiguration
- @SpringBootConfiguration是@Configuration的派生註解,作用於@Configuration一樣
- 該註解屬於SpringBoot的註解
@EnableAutoConfiguration
- 由@AutoConfigurationPackage和@Import(AutoConfigurationImportSelector.class)組成的註解
- 根據你新增的jar依賴自動配置你的Spring應用
- SpringBoot對配置進行依賴注入,對第三方庫的注入就是依靠該註解
@AutoConfigurationPackage
- 自動注入主類下所在包下所有加了註解的類例如(@Controller、@Service等)以及配置(@Configuration)
@Import
- 匯入普通的類,例如我們自己寫的java類
- 匯入實現了ImportSelector介面的類
- 匯入實現了ImportBeanDefinitionRegister介面的類
@ComponentScan
- 元件掃描,自動發現並裝配一些Bean(掃描並例項化)
- 等同於xml中的
<context:component-scan>