SpringBoot創(chuàng)建多模塊項(xiàng)目的全過程記錄
構(gòu)建項(xiàng)目
我們采用IntelliJ IDEA工具來創(chuàng)建一個Maven項(xiàng)目,項(xiàng)目的pom.xml要添加對應(yīng)SpringBoot的配置,因?yàn)镸aven多模塊項(xiàng)目內(nèi)的模塊并不能獨(dú)立的存在,必須有一個介質(zhì)來包含,項(xiàng)目結(jié)構(gòu)如下下圖所示



我們創(chuàng)建的Maven項(xiàng)目結(jié)構(gòu)如上圖所示,pom.xml內(nèi)我們對應(yīng)的添加了對SpringBoot的支持,因?yàn)槲覀冃枰褂肧pringBoot來作為項(xiàng)目基本框架,并在pom.xml配置文件引入了Web模塊的支持,所以介質(zhì)項(xiàng)目內(nèi)的Module都會用于Web依賴
我們在介質(zhì)Maven項(xiàng)目內(nèi)創(chuàng)建三個Module,分別為:bean(所有實(shí)體類Module)、user(用戶邏輯Module)、pager(頁面Module)。
創(chuàng)建實(shí)體Module(bean)
創(chuàng)建Module的方式與創(chuàng)建項(xiàng)目有點(diǎn)出入,我們點(diǎn)擊項(xiàng)目名稱后右鍵->New->Module->Maven,界面如下圖所示:

我在ArtifactId欄目填寫了bean,證明這個項(xiàng)目是demo組內(nèi)的一個子項(xiàng)目,點(diǎn)擊Next后創(chuàng)建Module即可,Module創(chuàng)建完成后的展現(xiàn)形式如下圖所示:

可以看到我們創(chuàng)建的模塊的pom.xml配置文件內(nèi)對應(yīng)添加了parent節(jié)點(diǎn)項(xiàng)目是我們的介質(zhì)項(xiàng)目,這也是Maven模塊項(xiàng)目的好處,我們可以把共同引入的內(nèi)容在介質(zhì)項(xiàng)目的pom.xml配置文件內(nèi)都引入,那么子項(xiàng)目也就會有相對應(yīng)的依賴。 下面我們在bean模塊項(xiàng)目內(nèi)添加一個用戶的實(shí)體,如下圖所示:

創(chuàng)建用戶Module(user)
接下來我們再來編寫user項(xiàng)目模塊,流程還是一樣,我們來創(chuàng)建一個user的Module,我們user模塊項(xiàng)目內(nèi)需要使用bean模塊項(xiàng)目內(nèi)創(chuàng)建的用戶實(shí)體,我們就可以在user模塊項(xiàng)目內(nèi)的pom.xml配置文件內(nèi)添加對應(yīng)的引入,項(xiàng)目結(jié)構(gòu)如下圖所示:

下面我們來測試user模塊項(xiàng)目添加了依賴后是否可以使用UserBean實(shí)體,我們在user模塊項(xiàng)目內(nèi)添加一個UserController并添加一些邏輯處理,如下圖所示:

創(chuàng)建頁面模塊(pager)
我們在user模塊內(nèi)配置了跳轉(zhuǎn)user_index.jsp頁面,所以我們需要對應(yīng)添加一個專門存放頁面的模塊,創(chuàng)建web模塊項(xiàng)目需要注意我們不選擇Maven項(xiàng)目創(chuàng)建,而是選擇SpringBoot項(xiàng)目類型創(chuàng)建,如下圖所示:


創(chuàng)建完成后我們創(chuàng)建pager模塊的maven配置文件pom.xml內(nèi)對應(yīng)parent節(jié)點(diǎn)的內(nèi)容并不是我們demo項(xiàng)目,并且我們demo配置文件對應(yīng)的內(nèi)容都已經(jīng)配置,這里不用重復(fù)引用,所以我們這里需要手動修改下,改動后內(nèi)容如下圖所示:

創(chuàng)建JSP文件
在創(chuàng)建user_index.jsp之前我們需要在application.properties配置文件內(nèi)添加對應(yīng)的路徑配置,如下圖所示:

根據(jù)上面的配置所示我們創(chuàng)建的user_index.jsp的所處位置為:/webapp/WEB-INF/jsp/user_index.jsp,創(chuàng)建user_index.jsp文件內(nèi)容如下圖所示:

注意:
pager模塊下面得test包在后面啟動的時候會報錯,這一可以刪掉,自動生成得啟動類ServletInitializer在繼承SpringBootServletInitializer類得時候默認(rèn)的包會報錯,需要導(dǎo)入新的包,如下圖:

在介質(zhì)項(xiàng)目中得pom.xml中注意 modules標(biāo)簽里面是不是包含了所有的子模塊,一般pager模塊不在,需要手動添加,如下圖:

使用外部Tomcat的形式運(yùn)行SpringBoot項(xiàng)目,我們需要添加項(xiàng)目對本地Tomcat服務(wù)器的支持。
配置本地Tomcat服務(wù)器
點(diǎn)擊Run->Edit Configurations->”+”->Tomcat Server->Local,界面如下圖所示:

如果沒有配置好的tomcat,點(diǎn)+添加一個新的tomcat,目錄配置完成后,需要將pager項(xiàng)目添加到Tomcat內(nèi),如下圖所示:

運(yùn)行測試
工具右上角選擇tomcat8服務(wù)器,點(diǎn)擊運(yùn)行按鈕后查看控制臺輸出的日志,如果沒有異常恭喜你已經(jīng)成功的啟動了多模塊項(xiàng)目,我們打開瀏覽器輸入網(wǎng)址:http://127.0.0.1:8080/user/index?name=admin,界面輸出內(nèi)容如下圖所示:

總結(jié)
到此這篇關(guān)于SpringBoot創(chuàng)建多模塊項(xiàng)目的文章就介紹到這了,更多相關(guān)SpringBoot創(chuàng)建多模塊項(xiàng)目內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Idea中SpringBoot多模塊項(xiàng)目的建立實(shí)現(xiàn)
- springboot多模塊包掃描問題的解決方法
- springboot多模塊多環(huán)境配置文件問題(動態(tài)配置生產(chǎn)和開發(fā)環(huán)境)
- SpringBoot集成mqtt的多模塊項(xiàng)目配置詳解
- springboot實(shí)現(xiàn)多模塊項(xiàng)目添加一新模塊
- IDEA搭建SpringBoot多模塊聚合工程過程詳解(多模塊聚合工程)
- springboot實(shí)現(xiàn)maven多模塊和打包部署
- springboot結(jié)合maven實(shí)現(xiàn)多模塊打包
- Springboot 多module打包方案示例詳解
- springboot項(xiàng)目父子多模塊打包方式
- SpringBoot多模塊搭建的實(shí)現(xiàn)示例
相關(guān)文章
使用kotlin集成springboot開發(fā)的超詳細(xì)教程
目前大多數(shù)都在使用java集成 springboot進(jìn)行開發(fā),本文演示僅僅將 java換成 kotlin,其他不變的情況下進(jìn)行開發(fā),需要的朋友可以參考下2021-09-09
Spring Boot實(shí)現(xiàn)簡單的定時任務(wù)
這篇文章主要給大家介紹了關(guān)于利用Spring Boot實(shí)現(xiàn)簡單的定時任務(wù)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者使用Spring Boot具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07
Java運(yùn)行時數(shù)據(jù)區(qū)劃分原理解析
這篇文章主要介紹了Java運(yùn)行時數(shù)據(jù)區(qū)劃分原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-04-04
web項(xiàng)目WEB-INF下沒有web.xml的解決方法
新手如果在web項(xiàng)目創(chuàng)建后WEB-INF下面沒有出現(xiàn)web.xml,怎么辦?別慌,沒有web.xml文件的原因是因?yàn)樵趧?chuàng)建web項(xiàng)目的時候沒有把創(chuàng)建web.xml勾上。這篇文章主要介紹了web項(xiàng)目WEB-INF下沒有web.xml的解決方法,需要的朋友可以參考下2022-12-12
SpringBoot的服務(wù)注冊與發(fā)現(xiàn)示例
本篇文章主要介紹了SpringBoot的服務(wù)注冊與發(fā)現(xiàn)示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-05-05
淺談@RequestBody和@RequestParam可以同時使用
這篇文章主要介紹了@RequestBody和@RequestParam可以同時使用,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-03-03
SpringBoot項(xiàng)目實(shí)現(xiàn)分布式日志鏈路追蹤
這篇文章主要給大家介紹了Spring Boot項(xiàng)目如何實(shí)現(xiàn)分布式日志鏈路追蹤,文中通過代碼示例給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-07-07
利用Java實(shí)現(xiàn)復(fù)制Excel工作表功能
這篇文章主要給大家介紹了關(guān)于如何利用Java實(shí)現(xiàn)復(fù)制Excel工作表功能的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用java具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12

