開(kāi)啟springboot特性的方式:
1.繼承spring-boot-startr-parent項(xiàng)目
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.6.RELEASE</version>
</parent>
2.導(dǎo)入spring-boot-dependencies項(xiàng)目依賴
<dependencyManagement>
<dependencies>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>1.5.6.RELEASE</version>
<type>Pom</type>
<scope>import</scope>
</dependencies>
</dependencyManagement>
springboot自動(dòng)配置原理
SpringBoot的自動(dòng)配置注解是@EnableAutoConfiguration敦捧,這個(gè)注解方法會(huì)加載類路徑及所有jar包下META-INF/spring。factories配置中映射的自動(dòng)配置的類兢卵。
@Configuration,@ConditionalOnClass是自動(dòng)配置的核心秽荤,首先它是一個(gè)配置文件,其次根據(jù)類路徑下是否有這個(gè)類去自動(dòng)配置窃款。
Springboot中的Starters
Starters可以看成是啟動(dòng)器,包含了一系列可以繼承到應(yīng)用里面的依賴包晨继,可以一站式集成Spring及其他技術(shù),不需要到處找示例代碼和依賴包紊扬。
- SpringBoot應(yīng)用類啟動(dòng)器
spring-boot-starter:包含自動(dòng)配置,日志餐屎,YAML的支持
spring-boot-starter-web:使用SpringMVC構(gòu)建web工程,包含restful腹缩,默認(rèn)使用tomcat容器
………………
- SpringBoot生產(chǎn)啟動(dòng)器
spring-boot-starter-actuator:提供生產(chǎn)環(huán)境特性,能監(jiān)控管理應(yīng)用藏鹊。
- SpringBoot技術(shù)類啟動(dòng)器
spring-boot-starter-json:提供對(duì)JSON的讀寫(xiě)支持
spring-boot-starter-logging:默認(rèn)的日志啟動(dòng)器,默認(rèn)使用Logback
- 其他第三方啟動(dòng)器
springboot讀取配置文件變量的方式
Springboot可以通過(guò)@PropertySource伙判,@Value,@Environment宴抚,@ConfigurationProperties來(lái)綁定變量
spring支持的日志框架
Springboot支持Java Util Logging甫煞, Log4j2冠绢, Lockback作為日志框架,如果使用Starters啟動(dòng)器弟胀,Springboot將使用Logback作為默認(rèn)的日志框架。
Springboot實(shí)現(xiàn)熱部署
主要有兩種方式:
SpringLoaded
Spring-boot-devtools
引入devtools依賴
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>