學AI,好工作 就找北大青鳥
關(guān)注小青 聽課做題,輕松學習
周一至周日
4000-9696-28

為什么SpringBoot能集萬千寵愛于一身?

來源:北大青鳥總部 2023年03月10日 13:29

摘要: SpringBoot基于Spring4.0設(shè)計,不僅繼承了Spring框架原有的優(yōu)秀特性,而且還通過簡化配置來進一步簡化了Spring應(yīng)用的整個搭建和開發(fā)過程。它的出現(xiàn)讓程序猿們徹底的解放了雙手,把所有的精力都投入到業(yè)務(wù)當中去。

在這個技術(shù)百花齊放、快速更迭的時代,程序猿們?yōu)榱四芨霞夹g(shù)的推陳出新的節(jié)奏,紛紛熬沒了頭發(fā)

對于Java程序猿來講更是深有體會,Java語言作為服務(wù)器端的“王者”,隨著互聯(lián)網(wǎng)的發(fā)展,為了滿足跟中五花八門的業(yè)務(wù),衍生出的各種框架,中間件技術(shù)等,這不最近又出來了一個的技術(shù),不過這個技術(shù)不僅沒有讓程序猿們想要逃離,而是對它喜愛有加,它就是SpringBoot。

它的出現(xiàn)讓程序猿們徹底的解放了雙手,把所有的精力都投入到業(yè)務(wù)當中去。今天咱么就來好好說道說道。



SpringBoot的前世今生

Spring框架

Spring: the source for modern java

Spirng: 現(xiàn)代java的起源

在正式開始介紹SpringBoot之前呢,首先必須要介紹下Spirng框架,相信所有的Java工程師對它應(yīng)該比對自己的女朋友都要了解。

Spring是一個開源框架,Spring是于2003 年興起的一個輕量級的Java 開發(fā)框架,Spring是模塊化的,允許你只是使用其中的一部分,不需要引入其他的。Spring設(shè)計為非侵入式的,意味著你的邏輯代碼不依賴與框架本身。



曾幾何時就在兩年前,也許你還在用著SSH(Struts2、Spring、Hibernate)或者SSM(SpringMVC、Spring、Mybatis)框架,以為三大法寶在手,天下我有。

雖然他們都擁有這繁瑣的配置,經(jīng)常因為莫名其妙的配置問題,導(dǎo)致整個服務(wù)出現(xiàn)問題;但是最為一名專業(yè)的程序猿,我們依然樂此不疲的快樂coding

然而突然有一天,空中好像劃過一道閃電--SpringBoot,它仿佛是廣大程序猿的救星,從此程序猿們再也不用拼雙手速了,過上了神仙眷侶的生活


SpringBoot到底是啥?

SpringBoot是由Pivotal團隊在2013年開始研發(fā)、2014年4月發(fā)布第一個版本的全新開源的輕量級框架。它基于Spring4.0設(shè)計,不僅繼承了Spring框架原有的優(yōu)秀特性,而且還通過簡化配置來進一步簡化了Spring應(yīng)用的整個搭建和開發(fā)過程。另外SpringBoot通過集成大量的框架使得依賴包的版本沖突,以及引用的不穩(wěn)定性等問題得到了很好的解決。通過這種方式,SpirngBoot致力于在蓬勃發(fā)展的快速應(yīng)用開發(fā)領(lǐng)域成為領(lǐng)導(dǎo)者。

需要說明的是Spring Boot并不是一個框架,從本質(zhì)上講,它就是一堆技術(shù)的集合,因為提供了基礎(chǔ)的平臺,任何技術(shù)想要集成進來只需要添加依賴即可。



為什么程序猿們?nèi)绱说拿詰賁pirngBoot

SpringBoot的特點

首先我們先看下SpringBoot有哪些特點,足以讓我們的廣大程序員為之傾倒

創(chuàng)建獨立的Spring應(yīng)用程序

嵌入式的Tomcat,Jetty或Undertow(無需部署WAR文件)

提供基礎(chǔ)的“Sstater”入門依賴項,以簡化構(gòu)建配置

盡可能自動配置Spring和3rd Party庫

完全沒有代碼生成,也不需要XML配置

....

以上任何一個特點都足以讓我們?yōu)橹d奮,特別是嵌入式的Tomcat、不需要任何XML的配置。簡直就是專為Java程序員而生,Java程序員苦xml久已。


SpringBoot的優(yōu)勢

當我們在進行傳統(tǒng)的SSM開發(fā)的時候,會有一些比較繁瑣的步驟

配置web.xml、Spring.xml的配置和SpringMVC.xml

配置數(shù)據(jù)源、事物、注解驅(qū)動

配置加載配置文件等

。。。

所有的這一切,在使用SpringBoot的時候都可以完全和他們Say goodbye了,接下來就讓我們進入SpringBoot的世界。


SpingBoot之初體驗

剛才把SpringBoot從里到外夸了一遍,接下來就是”見證奇跡的時刻“

通過IDEA的 Spring Initalizr構(gòu)建SpringBoot工程

直接File --> New --> Project創(chuàng)建一個項目



選擇Spring Initalizr通過SpringBoot官方提供的項目模板構(gòu)建



這里直接填下maven坐標,打包方式必須選擇jar,jdk版本8以上,其他報名項目名可以自己改



這里我們選擇web依賴,因為我們要構(gòu)建一個web項目,其實就是把SpringMVC的相關(guān)的依賴加入進來,這樣我們就可以直接使用SpringMVC了,不在需要額外的配置



填寫項目名稱,點擊Finish完成



這里會默認生成的SpringBoot項目我可以看到SpringBoot最標準的結(jié)構(gòu)

? 主程序也會默認生成了,我們只需要我們自己的邏輯

? resources文件夾中目錄結(jié)構(gòu)

– static:保存所有的靜態(tài)資源; js/css/ images等文件

– templates:保存所有的模板頁面 ,模板引freemarker、thymeleaf

– application.properties:Spring Boot應(yīng)用的配置文件;可以修改一些默認設(shè)置,如:默認的端口是8080



我們來看下他的pom.xml文件里比較重要的幾個依賴,

起步依賴,包含了很多基礎(chǔ)的依賴項,

web依賴,這個就相當于把SpringMVC加進來

<parent>
<!--SpringBoot起步依賴,任何SpringBoot工程都有-->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starte-rparent</artifactId>
<version>2.1.5.RELEASE</version>
</parent>

<dependency>
<!--構(gòu)建web工程需要的依賴-->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

接下來我們就來寫一個Controller來體驗一下SpringBoot簡單

/**
* SpringBoot之初體驗
*/
@RestController
public class DemoController {

@GetMapping("/hello")
public String hello() {
return "Hello SpringBoot?。?!";
}
}

直接運行主啟動類



當你看到如下的畫面,就說明你的SpringBoot工程已經(jīng)啟動成功了



接下來我們就來測試一下吧,當我們看到瀏覽器給我們的響應(yīng)時,就說明我們的項目成功了。此時端口默認是8080



是不是很簡單呢,構(gòu)建一個web就需要添加一個web依賴就可以了。媽媽再也不用擔心我的頭發(fā)了

這次內(nèi)容主要給大家科普下SpringBoot的前世今生,以及它的特點和優(yōu)勢,最后通過一個SpringBoot的demo演示了如何去構(gòu)建一個簡單的SpringBoot工程。讓大家體驗了一下SpringBoot的快速構(gòu)建項目的能力。


標簽: java
熱門班型時間
人工智能就業(yè)班 即將爆滿
AI應(yīng)用線上班 即將爆滿
UI設(shè)計全能班 即將爆滿
數(shù)據(jù)分析綜合班 即將爆滿
軟件開發(fā)全能班 爆滿開班
網(wǎng)絡(luò)安全運營班 爆滿開班
報名優(yōu)惠
免費試聽
課程資料
官方微信
返回頂部
培訓課程 熱門話題 站內(nèi)鏈接