Java應(yīng)用開發(fā)的顛覆者:Spring Boot

有人說,Spring Boot的出現(xiàn),讓Java迎來了又一春,它是Java開發(fā)技術(shù)的顛覆者,轉(zhuǎn)變了Java應(yīng)用開發(fā)的模式。

過去人們做Spring應(yīng)用開發(fā),要了解配置什么類來讓Hibernate和Spring一塊兒工作,要知曉怎樣配置view resolver來操控哪些模版實(shí)現(xiàn)視圖層的展示。時(shí)常寫了一堆代碼之后發(fā)現(xiàn)只是在處理Spring框架自身的配置,關(guān)鍵一行業(yè)務(wù)邏輯也沒有寫。

開發(fā)完成之后,我們需要考慮到布署的問題,且不說布署到特別笨重的應(yīng)用服務(wù)器,例如WebSphere, Weblogic或者JBoss,即便布署到Tomcat或者Jetty這類輕量級(jí)容器里面,我們要知道怎樣配置容器,怎樣更改配置文件等等。并且在多應(yīng)用布署到同一Tomcat的時(shí)候,時(shí)常會(huì)出現(xiàn)沖突。即便我們花了很大力氣處理了那些問題,程序布署完成以后,我們太難去掌握這個(gè)程序的執(zhí)行狀態(tài)。有可能我們要配置一大堆第三方工具來去確定這個(gè)應(yīng)用程序運(yùn)行情況如何,有什么參數(shù),環(huán)境變量是什么。即使Spring幫我們處理了依賴注入的問題,簡(jiǎn)單化了許多MVC的流程,可是Spring框架自身集成了越來越多東西,致使其越做越難配置,系統(tǒng)維護(hù)成本費(fèi)用成直線上漲。

許多時(shí)候,Python, Ruby或者JavaScript程序員敲幾個(gè)命令安裝一些庫,之后簡(jiǎn)單的敲幾行代碼,導(dǎo)入一些框架比如flask,然后直接一個(gè)簡(jiǎn)單的API就可以跑起來了。Java程序員或者還在研究該采用Maven里面的哪個(gè)庫,怎樣在代碼里面完成配置。

可是如今 Spring Boot的出現(xiàn)讓這一狀況得到很大的改觀。

它運(yùn)用“習(xí)慣優(yōu)于配置”(項(xiàng)目中具有大批量的配置,除此之外還內(nèi)置一個(gè)習(xí)慣性的配置,你可以無須手動(dòng)進(jìn)行配置)的核心理念讓你的項(xiàng)目迅速運(yùn)行起來。運(yùn)用Spring Boot 很易于建立一個(gè)獨(dú)立運(yùn)行(運(yùn)行jar,內(nèi)嵌Servlet 容器)、準(zhǔn)生產(chǎn)級(jí)別的基于Spring框架的項(xiàng)目,使用Spring Boot 你能不用或者只需要很少的Spring 配置。

【Spring Boot 核心功能】

獨(dú)立性運(yùn)行的Spring 項(xiàng)目

Spring Boot 還可以以jar 包的方式獨(dú)立運(yùn)行,運(yùn)行一個(gè)Spring Boot 項(xiàng)目只需通過java –jarxx.jar 來運(yùn)行。

內(nèi)嵌Servlet 容器

Spring Boot 可選取內(nèi)嵌Tomcat、Jetty 或是Undertow ,那樣我們不必以war 包方式布署項(xiàng)目。

提供starter 簡(jiǎn)化Maven 配置

Spring 提供了一系列的starter pom 來簡(jiǎn)化Maven 的依賴加載,比如,如果你采用了spring-boot-starter-web 時(shí),會(huì)全自動(dòng)加入如下圖所示的依賴包。

自動(dòng)配置Spring

Spring Boot 會(huì)依據(jù)在類路徑中的jar 包、類,為jar 包里的類電腦自動(dòng)配置Bean,那樣會(huì)更大地縮減我們要使用的配置。當(dāng)然,Spring Boot 僅僅考慮到了大部分的開發(fā)情景,并并不一定的情景,若在具體開發(fā)中我們需要自動(dòng)配置Bean,而Spring Boot 沒有提供支持,則可以自定義自動(dòng)配置。

準(zhǔn)生產(chǎn)的應(yīng)用監(jiān)控

Spring Boot 提供基于http、ssh、telnet 對(duì)運(yùn)行時(shí)的項(xiàng)目進(jìn)行監(jiān)控。

無代碼生成和xml 配置

Spring Boot 的奇妙的并不是依靠代碼生成來進(jìn)行的,而是根據(jù)先決條件注解來實(shí)現(xiàn)的,也是Spring 4.x 提供的新特性。

Spring 4.x 大力提倡采用Java 配置和注解配置組合,而Spring Boot 無需任何xml 配置即可實(shí)現(xiàn)Spring 的所有配置。

厲害

SpringBoot 不僅讓我們做Java開發(fā)變的簡(jiǎn)單有效,更重要的是SpringBoot徹底顛覆了我們對(duì)Java開發(fā)的認(rèn)識(shí),讓我們第一次有了”原來Java開發(fā)可以這么做” 的感覺。小編整理了一些java進(jìn)階學(xué)習(xí)資料和面試題,需要資料的請(qǐng)加JAVA高階學(xué)習(xí)Q群:701136382?這是小編創(chuàng)建的java高階學(xué)習(xí)交流群,加群一起交流學(xué)習(xí)深造。群里也有小編整理的2019年最新最全的java高階學(xué)習(xí)資料!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容