有人說古涧,Spring Boot的出現(xiàn)冰沙,讓Java迎來了又一春侨艾,它是Java應(yīng)用開發(fā)的顛覆者,徹底改變了Java應(yīng)用開發(fā)的模式拓挥。
以往我們做Spring應(yīng)用開發(fā)唠梨,要知道配置哪些類來讓Hibernate和Spring一起工作,要知道如何配置view resolver來控制哪個模版進(jìn)行視圖層的展示侥啤。經(jīng)常寫了一大堆代碼之后發(fā)現(xiàn)只是在處理Spring框架本身的配置当叭,根本一行業(yè)務(wù)邏輯都沒有寫。
小編推薦一個學(xué)JAVA的學(xué)習(xí)裙【 一三三盖灸,九三零蚁鳖,六九三】,無論你是大牛還是小白赁炎,是想轉(zhuǎn)行還是想入行都可以來了解一起進(jìn)步一起學(xué)習(xí)醉箕!裙內(nèi)有開發(fā)工具,很多干貨和技術(shù)資料分享開發(fā)完成之后徙垫,我們還要考慮部署的問題讥裤,且不說部署到非常笨重的應(yīng)用服務(wù)器,比如WebSphere, Weblogic或者JBoss姻报,即使部署到Tomcat或者Jetty這種輕量級容器上面己英,我們要知道如何配置容器,如何修改配置文件等等吴旋。而且在多應(yīng)用部署到同一個Tomcat的時候损肛,經(jīng)常會出現(xiàn)沖突寒亥。就算我們花了很大力氣解決了這些問題,程序部署成功之后荧关,我們很難去了解這個程序的運(yùn)行狀態(tài)溉奕。有可能我們要配置很多第三方工具來去知道這個應(yīng)用程序運(yùn)行狀態(tài)如何,有哪些參數(shù)忍啤,環(huán)境變量是什么加勤。盡管Spring幫我們解決了依賴注入的問題,簡化了一些MVC的流程同波,但是Spring框架本身集成了越來越多東西鳄梅,導(dǎo)致其越來越難配置,維護(hù)成本成直線上升未檩。
很多時候戴尸,Python, Ruby或者JavaScript程序員敲幾個命令安裝一些庫,然后簡單的敲幾行代碼冤狡,引入一些框架比如flask孙蒙,然后直接一個簡單的API就可以跑起來了。Java程序員可能還在研究該使用Maven里面的哪個庫悲雳,如何在代碼里面進(jìn)行配置挎峦。
但是現(xiàn)在 Spring Boot的出現(xiàn)讓這一情況有了很大的改觀。
它使用“習(xí)慣優(yōu)于配置”(項(xiàng)目中存在大量的配置合瓢,此外還內(nèi)置一個習(xí)慣性的配置坦胶,讓你無須手動進(jìn)行配置)的理念讓你的項(xiàng)目快速運(yùn)行起來。使用Spring Boot 很容易創(chuàng)建一個獨(dú)立運(yùn)行(運(yùn)行jar晴楔,內(nèi)嵌Servlet 容器)顿苇、準(zhǔn)生產(chǎn)級別的基于Spring框架的項(xiàng)目,使用Spring Boot 你可以不用或者只需要很少的Spring 配置税弃。
小編推薦一個學(xué)JAVA的學(xué)習(xí)裙【 一三三纪岁,九三零,六九三】钙皮,無論你是大牛還是小白蜂科,是想轉(zhuǎn)行還是想入行都可以來了解一起進(jìn)步一起學(xué)習(xí)!裙內(nèi)有開發(fā)工具短条,很多干貨和技術(shù)資料分享
【Spring Boot 核心功能】
獨(dú)立運(yùn)行的Spring 項(xiàng)目
Spring Boot 可以以jar 包的形式獨(dú)立運(yùn)行导匣,運(yùn)行一個Spring Boot 項(xiàng)目只需通過java –jarxx.jar 來運(yùn)行。
內(nèi)嵌Servlet 容器
Spring Boot 可選擇內(nèi)嵌Tomcat茸时、Jetty 或者Undertow 贡定,這樣我們無須以war 包形式部署項(xiàng)目。
提供starter 簡化Maven 配置
Spring 提供了一系列的starter pom 來簡化Maven 的依賴加載可都,例如缓待,當(dāng)你使用了spring-boot-starter-web 時蚓耽,會自動加入如下圖所示的依賴包。
自動配置Spring
Spring Boot 會根據(jù)在類路徑中的jar 包旋炒、類步悠,為jar 包里的類自動配置Bean,這樣會極大地減少我們要使用的配置瘫镇。當(dāng)然鼎兽,Spring Boot 只是考慮了大多數(shù)的開發(fā)場景,并不是所有的場景铣除,若在實(shí)際開發(fā)中我們需要自動配置Bean谚咬,而Spring Boot 沒有提供支持,則可以自定義自動配置尚粘。
準(zhǔn)生產(chǎn)的應(yīng)用監(jiān)控
小編推薦一個學(xué)JAVA的學(xué)習(xí)裙【 一三三择卦,九三零,六九三】郎嫁,無論你是大牛還是小白秉继,是想轉(zhuǎn)行還是想入行都可以來了解一起進(jìn)步一起學(xué)習(xí)!裙內(nèi)有開發(fā)工具行剂,很多干貨和技術(shù)資料分享Spring Boot 提供基于http秕噪、ssh钳降、telnet 對運(yùn)行時的項(xiàng)目進(jìn)行監(jiān)控厚宰。
無代碼生成和xml 配置
Spring Boot 的神奇的不是借助于代碼生成來實(shí)現(xiàn)的,而是通過條件注解來實(shí)現(xiàn)的遂填,這是Spring 4.x 提供的新特性铲觉。
Spring 4.x 提倡使用Java 配置和注解配置組合,而Spring Boot 不需要任何xml 配置即可實(shí)現(xiàn)Spring 的所有配置吓坚。
SpringBoot 不僅讓我們做Java開發(fā)變的簡單有效撵幽,更重要的是SpringBoot徹底顛覆了我們對Java開發(fā)的認(rèn)識,讓我們第一次有了”原來Java開發(fā)可以這么做” 的感覺礁击。
關(guān)于SpringBoot還有非常多值得深入討論的東西盐杂,黑馬程序員JavaEE就業(yè)班中,不但有對于SpringBoot的講解哆窿,還增加了項(xiàng)目實(shí)戰(zhàn)链烈,讓學(xué)員在就業(yè)中脫穎而出,全國十八個校區(qū)正在火熱招中挚躯,可以點(diǎn)擊 撩小編獲取更多信息强衡。
最后,小編整理了SpringBoot的教程码荔,幫助大家進(jìn)一步了解它漩勤。