Spring Boot從入門+進階+入魔(精講篇)

Spring Boot究竟是什麼

在瞭解Spring Boot以前應該先了解下Spring,由於Spring Boot的核心是基於Spring構建的。Spring是由Rod Johnson在2002年建立的一個開源框架,Spring在建立到如今一直處於飛速發展之中。目前已經成爲J2EE開發中的事實標準。可是隨着IT技術的飛速發展,及IT項目變得愈來愈複雜。若是學習過Spring就知道Spring很是依賴xml文件進行配置,有時一個項目就有幾十個xml配置文件,這些繁瑣的配置、以及Spring整合第三方框架的配置問題。常常致使開發效率低下,一不當心就出現丟三拉四;有時一不留神就致使發版失敗,給公司形成經濟損失。java

Spring Boot是由Pivotal團隊打造的,並在2014年發佈的一個全新框架,其設計目標就是用來簡化Spring應用的搭建、開發及部署。Spring Boot採用了特定的方式進行配置,從而達到使開發人員不在須要配置繁瑣的xml文件。簡單的說其實Spring Boot並非什麼新的框架,就是摒棄了xml的配置方式,使用了一種新的配置方式;而後在maven中使用starter的方式整合了不少第三方框架,同時提供了不少默認的配置參數。程序員

Spring Boot官網(https://spring.io/projects/spring-boot/ )有如【圖1】一段話:spring

Spring Boot從入門+進階+入魔(精講篇)

圖1數據庫

這段話這段話跟我上面的解釋大同小異。編程

Spring Boot爲啥不學不行

Spring Boot在短短四年就已經由1.0發展到2.0了;並且就這短短四年就已經紅遍神州大地。不管小公司,仍是大企業,都在使用。服務器

1.Spring Boot能幹啥框架

打開Spring官網(https://spring.io/ ),映入咱們眼簾的是以下一張圖【圖2】:運維

Spring Boot從入門+進階+入魔(精講篇)

圖2maven

看圖中框住的那塊知道,Spring官方對Spring Boot的定位是Build Anything,意思就是Spring Boot能夠構建任何東西。Spring Boot旨在快速、高效,使用最少的配置構建Java應用。學完了Spring Boot,還有更高級的Spring Cloud和Spring Cloud Data Flow。模塊化

Spring Cloud的定位是Coordinate Anything (協調任何東西)

Spring Cloud Data Flow的定位是Connect Everything (鏈接任何東西)

仔細斟酌一下Spring Cloud和Spring Cloud Data Flow,發現Cloud和Data 都跟如今最火的技術關聯在一塊兒,Cloud對應雲,Data對應數據。而Spring Cloud和Spring Cloud Data Flow有基於Spring Boot,因此Spring Boot必須先學。

2.企業招聘對Spring Boot的要求及Spring Boot的百度搜索指數

打開國內比較知名的招聘網站,例如在獵聘網搜索一下,能夠發現不少Java相關的職位都對Spring Boot技術有所要求。以下【圖3】這個Oralce公司的招聘職位,在招聘的職位描述裏就對Spring Boot有要求。

Spring Boot從入門+進階+入魔(精講篇)

圖3】

Spring Boot嫣然已經成爲Java程序員打怪升級的必備技能。就不說Spring Boot有多重要了。

再看下Spring Boot的這個關鍵字的百度搜索指數(http://index.baidu.com),Spring Boot從2014年推出到如今,Spring Boot在百度的搜索指數一直處於穩步增加的狀態中【圖4】。說明程序員或者公司對Spring Boot關注度很是高。

Spring Boot從入門+進階+入魔(精講篇)

圖4

3.Spring Boot的好處

使用了Spring Boot後,能給開發人員帶來哪些好處?能給運維人員帶來哪些方便?甚至說能給公司帶來哪些經濟效益?看圖【圖5】說話:

Spring Boot從入門+進階+入魔(精講篇)

圖5

1.基於Spring

Spring Boot基於Spring,因此Spring有的優勢Spring Boot也有,不須要開發人員去學習一個全新的框架,學習門檻相對下降。

2.快速編碼

Spring Boot的依賴包都是基於maven的pom文件提供的,而Spring Boot自己就集成了特別多的第三方框架。之前開發Spring應用時,須要用到的第三方框架的庫都須要開發人員一個一個去尋找;如今不須要了,有些可能只需引入一個pom.xml,就能把大量須要用到的第三方庫自動引入到項目中。因此減小了開發工做量,實現快速編碼。

3.模塊化

基於Spring Boot開發的項目能夠很是簡單的實現模塊化編程,這樣的話能夠很是有效的實現項目的分工合做,減小開發過程當中的代碼衝突。模塊化編程還能夠很是高效的實現減小代碼的改動量,按需修改模塊,下降生產發生事故機率。

4.配置簡單

在文章開頭就說了Spring Boot擯棄了繁瑣的xml配置文件,大量的配置文件常常是致使生產事故的緣由。Spring Boot大量採用yml形式的配置文件再加上相應的Annotation,從而大大減小了配置文件的個數,由於之前的Spring應用引入一個第三方框架說不定就要添加一個配置文件。舉個例子,好比項目中要引入數據庫鏈接池HikariCP,就須要添加一個關於HikariCP數據庫鏈接池的配置文件,可是使用了Spring Boot採用HikariCP可能就只須要那麼幾行配置就能夠了,由於Spring Boot默認集成HikariCP數據庫鏈接池,提供了不少默認的配置。

5.便捷部署

Spring Boot天生就是爲了簡單、快捷部署而生。SpringBoot內嵌了Tomcat,不須要額外部署應用服務器Tomcat,只需簡單一個Java運行環境便可,並且啓動的命令也很是簡單:java –jar xxx-release.jar。同時Spring Boot結合如今很是火的技術 Docker、Kubernetes能夠快速實現集羣部署。

6.有效監控

Spring Boot集成了很是高效的監控框架,只要簡單引入對spring-boot-start-actuator的依賴,就能夠實現對服務性能的監控。結合Spring Cloud就能夠實現對整個微服務鏈路的全天候監控。

粉絲福利

Spring Boot從入門+進階+入魔(精講篇)

 

給你們推薦一本書,第一本手寫Spring書籍,現還在預售階段,如想購買私信(Java)拿優惠連接

相關文章
相關標籤/搜索