一文教會(huì)你如何從0到1搭建一個(gè)SpringBoot項(xiàng)目
前言
SpringBoot是大家使用最多的一個(gè)Java框架了,今日就來詳細(xì)介紹一下如何去創(chuàng)建一個(gè)SpringBoot項(xiàng)目
一、準(zhǔn)備工作
首先要來看你的IDEA版本,如果你的IDEA是【專業(yè)版】的,那么你就無需安裝任何的插件,直接就可以創(chuàng)建SpringBoot的項(xiàng)目了
但如果你的IDEA版本是【社區(qū)版】的話,就需要考慮地仔細(xì)一些了,因此此時(shí)你需要先去安裝以下插件
首先第一個(gè)的話是Spring Boot Helper 插件

在你安裝好這個(gè)插件之后,它的名字就變成了Spring Initializr and Assistant

二、正式創(chuàng)建SpringBoot項(xiàng)目
接下來我們來創(chuàng)建 Spring Boot 項(xiàng)?了
1、創(chuàng)建一個(gè)新項(xiàng)目
如果你是英文版的,就在這里選擇New -> Project...

如果你是中文版的,就在這里選擇新建 -> 項(xiàng)目...

接下去就會(huì)跳出來選項(xiàng)了,這里我們選擇Spring Initializr,在右側(cè)讀者記得選擇正確的JDK版本,此處推薦JDK8,但如果你是JDK17的也沒有關(guān)系
然后就選擇要?jiǎng)?chuàng)建項(xiàng)目的源地址即可,默認(rèn)這里我們使用到的是官網(wǎng)默認(rèn)的數(shù)據(jù)源start.spring.io,但如果官方的這個(gè)數(shù)據(jù)源掛了,也不用擔(dān)心,我們還可以使用阿里巴巴的國(guó)內(nèi)源start.aliyun.com去創(chuàng)建,點(diǎn)下下面的 Custom即可(不推薦,有兼容性問題)


2、項(xiàng)目參數(shù)設(shè)置
接下里點(diǎn)進(jìn)去呢就是具體的項(xiàng)目參數(shù)設(shè)置了此處我們主要修改的地方就兩個(gè):
- 是這個(gè)【Project Types】,一定要選擇
Maven - 第二個(gè)呢則是這個(gè)【Java version】,對(duì)應(yīng)這你前面所選擇的JDK版本,如果你前面選擇的是JDK17的話,此處也選JDK17;如果前面選擇的是JDK8的話,此處也選JDK8

3、添加項(xiàng)目依賴
接下去我們就要添加項(xiàng)目依賴了,首先我們要關(guān)注的地方就是這個(gè)SpringBoot的版本:
- 如果你前面選擇的是JDK8的話,那么在這里你只能選擇
2.0開頭的版本 - 但如果你前面選擇的是JDK17的話,那么在這里便可以支持
3.0開頭的版本


接下來我們就要去添加各項(xiàng)依賴了,想要去完整地做出一個(gè)項(xiàng)目,此處我們必須要添加的依賴有以下四個(gè):
MySQL Driver—— 用于支持MySQL的數(shù)據(jù)庫(kù)驅(qū)動(dòng)SpringBoot DevTools—— 用于熱部署Lombok—— 簡(jiǎn)化 Java 代碼,減少樣板代碼,提高開發(fā)效率Spring Web—— 讓當(dāng)前的框架變成HTTP框架的依賴



4、項(xiàng)目存儲(chǔ)與啟動(dòng)
當(dāng)添加好各項(xiàng)依賴之后,我們就可以設(shè)置當(dāng)前項(xiàng)目的存儲(chǔ)路徑了,不過要注意的是項(xiàng)目名稱和路徑中不能出現(xiàn)任何和中文相關(guān)的信息

接下來一進(jìn)去,你可以可能會(huì)遇到各種各樣的問題,我們來一一解說一下
首先第一個(gè):你在點(diǎn)開DemoApplication是可能會(huì)看到其左下角有一個(gè)橙色的j的圖標(biāo),這表明IDEA還沒有把當(dāng)前的項(xiàng)目識(shí)別為是Maven項(xiàng)目,此時(shí)我們就需要加載對(duì)應(yīng)的Maven依賴

此時(shí)我們就需要添加框架的支持Add Framework Support

在點(diǎn)進(jìn)去之后,選擇Maven然后打勾即可

接下去如果讀者碰到的是下面這樣的情況的話,就是出現(xiàn)了Maven國(guó)內(nèi)源的問題

對(duì)于這個(gè)問題我在之前的博客中有過介紹,讀者可以去看看 鏈接
有藍(lán)色c小圖標(biāo)代表項(xiàng)目加載好了

然后我們進(jìn)入到啟動(dòng)類DemoApplication,點(diǎn)擊【運(yùn)行】即可

在項(xiàng)目啟動(dòng)起來之后,我們可以看到有一個(gè)很大的Spring標(biāo)志,然后看到底部以ms為單位的數(shù)字便可以觀察出后臺(tái)已經(jīng)啟動(dòng)了( •? ω •? )y

5、測(cè)試與運(yùn)行
在一切都配置好之后,我們就可以寫一些代碼來測(cè)試一下了
首先我們要做的就是創(chuàng)建controller層,這個(gè)分層原理我們后面會(huì)講到,controller層主要是用來與前端頁面的路由地址進(jìn)行交互的

以下是具體的測(cè)試代碼,從代碼的風(fēng)格我們就可以看出其與Servlet不同之處在于我們無需為多個(gè)功能去實(shí)現(xiàn)多個(gè)類,而是只需要寫一個(gè)類就可以了,接著我們通過路由的選擇就可以找對(duì)應(yīng)的功能了
@RestController
@RequestMapping("/user")
public class UserController {
@RequestMapping("/add")
public String addUser(String name){
//...
return "add success - >" + name;
}
@RequestMapping("/del")
public String delUser(String name){
//...
return "del success - >" + name;
}
@RequestMapping("/sel")
public String selUser(String name){
//...
return "sel success - >" + name;
}
@RequestMapping("/update")
public String updateUser(String name){
//...
return "update success - >" + name;
}
}
我們可以來前端頁面輸入網(wǎng)址進(jìn)行測(cè)試,看看具體的路由傳參,如果來實(shí)現(xiàn)前后端交互的
http://localhost:8080/user/add?name=zhangsan

我們來改變一下queryString的參數(shù),讓name=lisi,那么最后打印出來的值就變成了lisi
http://localhost:8080/user/add?name=lisi

三、總結(jié)與提煉
那么以上就是如果如何從0到1搭建一個(gè)SpringBoot項(xiàng)目了,我們?cè)賮砘仡櫩偨Y(jié)一下??
首先我們要做好前期的準(zhǔn)備工作,明確自己IDEA的版本以此清楚要從何處去創(chuàng)建新建一個(gè)項(xiàng)目
接下去我們開始正式項(xiàng)目的搭建了,我們以社區(qū)版為例,當(dāng)安裝好指定插件后,便可以去創(chuàng)建新項(xiàng)目了,其中要注意的點(diǎn)是:
- 參數(shù)的設(shè)置中:Maven項(xiàng)目的選擇以及對(duì)應(yīng)JDK的選擇
- 添加項(xiàng)目依賴時(shí):SpringBoot版本的選擇以及各項(xiàng)依賴的正確添加
- 保存項(xiàng)目時(shí):項(xiàng)目名稱和路徑中不能出現(xiàn)任何和中文相關(guān)的信息
- 項(xiàng)目啟動(dòng)前:IDEA項(xiàng)目識(shí)別問題 以及 Maven國(guó)內(nèi)源的配置問題
那么當(dāng)上面的這些全部配置完之后,我們便可以去運(yùn)行代碼進(jìn)行測(cè)試了,觀察前后端的交互我們可以看出【SpringBoot】相較【Servlet】來說有了很大的便捷性和性能提升
到此這篇關(guān)于如何從0到1搭建一個(gè)SpringBoot項(xiàng)目的文章就介紹到這了,更多相關(guān)SpringBoot項(xiàng)目搭建內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
從java8升級(jí)java17的一些調(diào)整總結(jié)
在過去的幾年里,Java經(jīng)歷了多次版本升級(jí),從JDK8到JDK17,每一次升級(jí)都帶來了許多新的特性和改進(jìn),這篇文章主要介紹了從java8升級(jí)java17的一些調(diào)整,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2026-03-03
Spring?Session(分布式Session共享)實(shí)現(xiàn)示例
這篇文章主要介紹了Spring?Session(分布式Session共享)實(shí)現(xiàn)示例,文章內(nèi)容詳細(xì),需要的朋友可以參考下2023-01-01
Spring Boot 對(duì)接深度求索接口實(shí)現(xiàn)知識(shí)問答功能
本文詳細(xì)介紹了如何使用 Spring Boot 對(duì)接深度求索接口,實(shí)現(xiàn)知識(shí)問答功能,通過整合深度求索 API,我們可以輕松地在 Spring Boot 項(xiàng)目中實(shí)現(xiàn)智能問答功能,2025-02-02
mybatis 如何利用resultMap復(fù)雜類型list映射
這篇文章主要介紹了mybatis 如何利用resultMap復(fù)雜類型list映射的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-07-07
SpringBoot中將@Bean方法解析為BeanDefinition詳解
這篇文章主要介紹了SpringBoot中將@Bean方法解析為BeanDefinition詳解,得到的BeanDefinition是ConfigurationClassBeanDefinition類型,會(huì)為BeanDefinition設(shè)置factoryMethodName,這意味著當(dāng)實(shí)例化這個(gè)bean的時(shí)候?qū)⒉捎霉S方法,需要的朋友可以參考下2023-12-12
Arrays.sort如何實(shí)現(xiàn)降序排序
這篇文章主要介紹了Arrays.sort如何實(shí)現(xiàn)降序排序問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-11-11

