日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

idea 多模块build_[史上最详细]springboot创建基于maven的多模块项目

發布時間:2023/12/10 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 idea 多模块build_[史上最详细]springboot创建基于maven的多模块项目 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
點擊藍字 關注我們?

背景

項目為什么需要用多模塊?springmvc難道還不夠我們平常使用嗎?

  • 設計模式真言:“高內聚、低耦合”,springmvc項目,一般會把項目分成多個包:controller、service、dao、util等,但是隨著項目的復雜性提高,想復用其他一個模塊的話,因為是包的形式,剝離出來會比較困難,耦合性有點強,常用的方法就是復制代碼修改,但是這樣會做很多無用功與增加出錯幾率。

  • springboot多模塊簡單來說,就是把按包分模塊的模式,借助maven升級到jar的方式,抽象性更加強了,假如jar再升級到到war或者多個集合jar,就成微服務了,在多模塊jar模式下可以將某個jar拿出來對外共用,能大大提高代碼復用率與開發效率。

  • 話不多說開搞

    springboot多模塊創建

    父模塊創建

    • 打開idea:選擇Create New Project

    或者去官網創建(跟idea創建項目是一樣的,我這里用的是idea)

    • 然后選擇Spring Initializr

    • 點擊next之后—>基本設置

    • 點擊next之后->添加依賴

    • 點擊next之后->選擇項目地址

    • 點擊finish之后

    子模塊創建

    • 父項目名稱->右鍵->new->moudle

    • 點擊Spring Initializr(選擇合適jdk版本)->next

    • 點擊next之后->設置Maven Project 而不是跟父項目相同的Maven Pom

    • 點擊next之后->添加依賴

    • 點擊next->選擇確認項目地址

    • 點擊finish完成

    然后再創建一個子模塊multi-core 過程跟multi-controller一樣,我這里就省略了。我們這里就暫時創建兩個子模塊。

    • 項目創建完成整體結構圖

    注:由于程序的主入口是multi-controller 所有 multi-core里面 application.properties MultiCoreApplication.java 文件都刪除了

    修改pom文件

    1.修改父項目pom-修改完成如下所示(有注釋)

    <?xml ?version="1.0"?encoding="UTF-8"?>
    <project?xmlns="http://maven.apache.org/POM/4.0.0"?xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0?https://maven.apache.org/xsd/maven-4.0.0.xsd">
    ????<modelVersion>4.0.0modelVersion>
    ????<parent>
    ????????<groupId>org.springframework.bootgroupId>
    ????????<artifactId>spring-boot-starter-parentartifactId>
    ????????<version>2.4.1version>
    ????????<relativePath/>?
    ????parent>
    ????<groupId>com.tinygraygroupId>
    ????<artifactId>multi-parentartifactId>
    ????<version>0.0.1-SNAPSHOTversion>
    ????<name>multi-parentname>
    ????<description>Demo?project?for?Spring?Bootdescription>
    ????
    ????<packaging>pompackaging>
    ????
    ????<modules>
    ????????<module>multi-controllermodule>
    ????????<module>multi-coremodule>
    ????modules>
    ????
    ????<properties>
    ????????<java.version>1.8java.version>
    ????properties>

    ????<dependencies>
    ????????
    ????????<dependency>
    ????????????<groupId>org.springframework.bootgroupId>
    ????????????<artifactId>spring-boot-starter-webartifactId>
    ????????dependency>
    ????????<dependency>
    ????????????<groupId>org.springframework.bootgroupId>
    ????????????<artifactId>spring-boot-starterartifactId>
    ????????dependency>
    ????????<dependency>
    ????????????<groupId>org.projectlombokgroupId>
    ????????????<artifactId>lombokartifactId>
    ????????????<optional>trueoptional>
    ????????dependency>
    ????????<dependency>
    ????????????<groupId>org.springframework.bootgroupId>
    ????????????<artifactId>spring-boot-starter-testartifactId>
    ????????????<scope>testscope>
    ????????dependency>
    ????????<dependency>
    ????????????
    ????????????<groupId>org.springframework.bootgroupId>
    ????????????<artifactId>spring-boot-testartifactId>
    ????????????<version>2.0.1.RELEASEversion>
    ????????????<scope>testscope>
    ????????dependency>
    ????dependencies>

    project>

    2.修改子項目pom

    • multi-controller

    <?xml ?version="1.0"?encoding="UTF-8"?>
    <project?xmlns="http://maven.apache.org/POM/4.0.0"?xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0?https://maven.apache.org/xsd/maven-4.0.0.xsd">
    ????<modelVersion>4.0.0modelVersion>

    ????<artifactId>multi-controllerartifactId>
    ????<version>0.0.1-SNAPSHOTversion>
    ????<name>multi-controllername>
    ????<description>Demo?project?for?Spring?Bootdescription>
    ????
    ????<parent>
    ????????<artifactId>multi-parentartifactId>
    ????????<groupId>com.tinygraygroupId>
    ????????<version>0.0.1-SNAPSHOTversion>
    ????parent>
    ???

    ????<dependencies>
    ????????
    ????????<dependency>
    ????????????<groupId>com.tinygraygroupId>
    ????????????<artifactId>multi-coreartifactId>
    ????????????<version>0.0.1-SNAPSHOTversion>
    ????????dependency>
    ????dependencies>

    ????<build>
    ????????<plugins>
    ????????????<plugin>
    ????????????????<groupId>org.springframework.bootgroupId>
    ????????????????<artifactId>spring-boot-maven-pluginartifactId>
    ????????????????<configuration>
    ????????????????????<mainClass>com.tinygray.multicontroller.MultiControllerApplicationmainClass>
    ????????????????????<layout>JARlayout>
    ????????????????configuration>
    ????????????plugin>
    ????????plugins>
    ????build>

    project>
    • multi-core

    <?xml ?version="1.0"?encoding="UTF-8"?>
    <project?xmlns="http://maven.apache.org/POM/4.0.0"?xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0?https://maven.apache.org/xsd/maven-4.0.0.xsd">
    ????<modelVersion>4.0.0modelVersion>

    ????<artifactId>multi-coreartifactId>
    ????<version>0.0.1-SNAPSHOTversion>
    ????<name>multi-corename>
    ????<description>Demo?project?for?Spring?Bootdescription>
    ????
    ????<parent>
    ????????<artifactId>multi-parentartifactId>
    ????????<groupId>com.tinygraygroupId>
    ????????<version>0.0.1-SNAPSHOTversion>
    ????parent>
    ????

    ????<dependencies>
    ????????
    ????dependencies>

    project>

    springboot多模塊創建完成之后驗證啟動

    驗證

    你如何知道你的多模塊項目搭建完成并能成功啟動了呢?看下圖:

    出現以上圖片結果就是你的多模塊項目創建完成了并可以啟動了

    啟動

    • 找到啟動類

    • 執行啟動類

    • 執行成功

    • 瀏覽器打開?http://localhost:8080

    • 出現以上結果表示多模塊項目已經搭建完成了

    寫一個測試接口訪問

    • 創建兩個java文件(一個實體類User一個UserController)

    • User.java、UserController.java文件內容-很簡單一個測試接口

    • 瀏覽器輸入http://localhost:8080/user/getUserInfo

    • 出現以上結果就表示測試成功了。

    • 項目地址:

      • 搜索公眾號:Madison龍少

      • 回復?springboot-multi-module?獲取資源

    結束語

    掃碼關注我們

    公眾號|Madison龍少

    微信號|公眾號點擊'聯系方式'菜單獲取

    期待你的

    分享

    點贊

    在看

    總結

    以上是生活随笔為你收集整理的idea 多模块build_[史上最详细]springboot创建基于maven的多模块项目的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。