springboot的核心
1、SpringBoot核心原理
1.基于SpringMVC無配置文件(純Java)完全注解化+內(nèi)置tomcat-embed-core實現(xiàn)SpringBoot框架,Main函數(shù)啟動。
2.?SpringBoot核心快速整合第三方框架原理:Maven繼承依賴關(guān)系。
2、SpringBoot重點(diǎn)
1.快速整合第三方依賴:maven子父依賴關(guān)系。
springboot?通過引用spring-boot-starter-web依賴,整合SpingMVC框架。只需要引用一個jar包,就可以通過Maven繼承的方式引用到Spring-aop,Spring-beans,Spring-core,Spring-web等相關(guān)依賴。
2.完全無配置文件(采用注解化)
springboot沒有配置文件,如何進(jìn)行初始化?
在沒有web.xml配置文件的情況,通過java代碼操作整個SpringMVC的初始化過程,java代碼最終會生成class文件,內(nèi)置Tomcat就會加載這些class文件,當(dāng)所有程序加載完成后,項目就可以訪問了。
3.內(nèi)置Http服務(wù)器
3、springBoot框架流程
先創(chuàng)建Tomcat容器,然后加載class文件,加載過程中如果發(fā)現(xiàn)有java代碼編寫的SpringMVC初始化,就會創(chuàng)建SpringMVC容器。所有程序執(zhí)行完畢后,項目就可以訪問了。
?
那么:springboot真正吸引我們的是什么?
Spring Boot 最重要的功能是:自動配置。
為什么說是自動配置?
Spring Boot 的開啟注解是:@SpringBootApplication,其實它就是由下面三個注解組成的:
-  
@Configuration
 -  
@ComponentScan
 -  
@EnableAutoConfiguration
 
上面三個注解,前面兩個都是 Spring 自帶的,和 Spring Boot 無關(guān),所以說上面的回答的不是在點(diǎn)上。
所以說 Spring Boot 最最核心的就是這個?@EnableAutoConfiguration?注解了,它能根據(jù)類路徑下的 jar 包和配置動態(tài)加載配置和注入bean。
舉個例子,比如我在 lib 下放一個 druid 連接池的 jar 包,然后在 application.yml 文件配置 druid 相關(guān)的參數(shù),Spring Boot 就能夠自動配置所有我們需要的東西,如果我把 jar 包拿掉或者把參數(shù)去掉,那 Spring Boot 就不會自動配置。
這樣我們就能把許多功能做成公共的自動配置的啟動器(starters),其實 druid 連接池就是這么做的,它提供了針對 Spring Boot 的啟動器:druid-spring-boot-starter。
有了這個自動配置的啟動器,我們就能非常簡單的使用它,
先添加 jar 包依賴:
<dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>1.1.10</version> </dependency>再添加相關(guān)參數(shù):
spring.datasource.url=? spring.datasource.username= spring.datasource.password= ……如果是傳統(tǒng)的項目,我們要自己手動寫一大堆的配置,而且還不靈活,有了這個啟動器,我們就可以做到簡單集成。具體大家可以看 druid-spring-boot-starter 是怎么實現(xiàn)的。
所以,這才是 Spring Boot 的核心,這才是我們?yōu)槭裁词褂?Spring Boot 的原因。
?
超強(qiáng)干貨來襲 云風(fēng)專訪:近40年碼齡,通宵達(dá)旦的技術(shù)人生總結(jié)
以上是生活随笔為你收集整理的springboot的核心的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: springboot入门程序
 - 下一篇: yml语法