欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

springBoot不同module之間互相依賴的實現(xiàn)

 更新時間:2024年08月19日 09:28:01   作者:陳大頭鈴兒響叮當(dāng)  
本文主要介紹了springBoot不同module之間互相依賴的實現(xiàn),不同模塊之間的依賴通常是通過Maven或Gradle來管理的,下面就來介紹一下如何實現(xiàn),感興趣的可以了解一下

在 Spring Boot 多模塊項目中,不同模塊之間的依賴通常是通過 Maven 或 Gradle 來管理的。以下是一個示例結(jié)構(gòu)和如何設(shè)置這些依賴的示例。

項目結(jié)構(gòu)

假設(shè)我們有一個多模塊的 Spring Boot 項目,結(jié)構(gòu)如下:

my-springboot-project
│
├── pom.xml                  // 父 POM 文件
├── module-a
│   ├── pom.xml              // Module A 的 POM 文件
│   └── src
│       └── main
│           └── java
│               └── com.example.modulea
│                   └── ModuleAApplication.java
│
├── module-b
│   ├── pom.xml              // Module B 的 POM 文件
│   └── src
│       └── main
│           └── java
│               └── com.example.moduleb
│                   └── ModuleBApplication.java
│
└── module-c
    ├── pom.xml              // Module C 的 POM 文件
    └── src
        └── main
            └── java
                └── com.example.modulec
                    └── ModuleCApplication.java

父 POM 文件(my-springboot-project/pom.xml)

在父 POM 文件中,定義所有子模塊和共有的依賴。

<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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.example</groupId>
    <artifactId>my-springboot-project</artifactId>
    <version>1.0.0</version>
    <packaging>pom</packaging>

    <modules>
        <module>module-a</module>
        <module>module-b</module>
        <module>module-c</module>
    </modules>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>2.7.0</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <!-- 其他共有的依賴 -->
        </dependencies>
    </dependencyManagement>

    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>
</project>

模塊 A 的 POM 文件(module-a/pom.xml)

<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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>com.example</groupId>
        <artifactId>my-springboot-project</artifactId>
        <version>1.0.0</version>
    </parent>

    <artifactId>module-a</artifactId>

    <dependencies>
        <!-- 依賴于 Spring Boot 和其他公共庫 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>
    </dependencies>
</project>

模塊 B 的 POM 文件(module-b/pom.xml)

模塊 B 依賴于模塊 A,因此在它的 POM 文件中要添加對模塊 A 的依賴。

<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 http://www.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>com.example</groupId>
        <artifactId>my-springboot-project</artifactId>
        <version>1.0.0</version>
    </parent>

    <artifactId>module-b</artifactId>

    <dependencies>
        <dependency>
            <groupId>com.example</groupId>
            <artifactId>module-a</artifactId>
            <version>1.0.0</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>
    </dependencies>
</project>

模塊 C 的 POM 文件(module-c/pom.xml)

模塊 C 也可以依賴于其他模塊,如模塊 A 和 B。

<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 http://www.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>com.example</groupId>
        <artifactId>my-springboot-project</artifactId>
        <version>1.0.0</version>
    </parent>

    <artifactId>module-c</artifactId>

    <dependencies>
        <dependency>
            <groupId>com.example</groupId>
            <artifactId>module-a</artifactId>
            <version>1.0.0</version>
        </dependency>
        <dependency>
            <groupId>com.example</groupId>
            <artifactId>module-b</artifactId>
            <version>1.0.0</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>
    </dependencies>
</project>

依賴解析

  • 父 POM 文件:定義了所有模塊的公共依賴和配置。
  • 子模塊 POM 文件:繼承自父 POM 文件,可以定義特定于該模塊的依賴,并可以依賴其他模塊。

通過這種方式,每個模塊可以獨立開發(fā)、測試和運行,但仍然可以共享公共配置和依賴,從而減少重復(fù)代碼和配置。

到此這篇關(guān)于springBoot不同module之間互相依賴的實現(xiàn)的文章就介紹到這了,更多相關(guān)springBoot不同module互相依賴內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • springboot項目啟動的時候,運行main方法報錯NoClassDefFoundError問題

    springboot項目啟動的時候,運行main方法報錯NoClassDefFoundError問題

    這篇文章主要介紹了springboot項目啟動的時候,運行main方法報錯NoClassDefFoundError問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • Idea插件StopCoding的安裝使用教程

    Idea插件StopCoding的安裝使用教程

    這篇文章主要介紹了Idea插件StopCoding的安裝使用教程,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-01-01
  • mybatis攔截器與分頁插件實例教程

    mybatis攔截器與分頁插件實例教程

    Mybatis攔截器常常會被用來進行分頁處理。所以下面這篇文章主要給大家介紹了關(guān)于mybatis攔截器與分頁插件的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用mybatis具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • springbean的加載過程及應(yīng)用場景分析

    springbean的加載過程及應(yīng)用場景分析

    Bean已經(jīng)被實例化、屬性注入、初始化,并且注冊到容器中,可以被其他Bean或應(yīng)用程序使用,這篇文章主要介紹了springbean的加載過程以及應(yīng)用場景,需要的朋友可以參考下
    2024-04-04
  • 解讀Spring配置文件中的property標簽中的屬性

    解讀Spring配置文件中的property標簽中的屬性

    這篇文章主要介紹了Spring配置文件中的property標簽中的屬性,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • Spring整合ehCache全過程

    Spring整合ehCache全過程

    這篇文章主要介紹了Spring整合ehCache全過程,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • Java二叉搜索樹遍歷操作詳解【前序、中序、后序、層次、廣度優(yōu)先遍歷】

    Java二叉搜索樹遍歷操作詳解【前序、中序、后序、層次、廣度優(yōu)先遍歷】

    這篇文章主要介紹了Java二叉搜索樹遍歷操作,結(jié)合實例形式詳細分析了Java二叉搜索樹前序、中序、后序、層次、廣度優(yōu)先遍歷等相關(guān)原理與操作技巧,需要的朋友可以參考下
    2020-03-03
  • 快速了解hibernate配置文件與映射文件

    快速了解hibernate配置文件與映射文件

    這篇文章主要介紹了快速了解hibernate配置文件與映射文件,具有一定參考價值,需要的朋友可以了解下。
    2017-10-10
  • 詳解Java中Dijkstra(迪杰斯特拉)算法的圖解與實現(xiàn)

    詳解Java中Dijkstra(迪杰斯特拉)算法的圖解與實現(xiàn)

    Dijkstra(迪杰斯特拉)算法是典型的單源最短路徑算法,用于計算一個節(jié)點到其他所有節(jié)點的最短路徑。本文將詳解該算法的圖解與實現(xiàn),需要的可以參考一下
    2022-05-05
  • Java設(shè)置Excel數(shù)據(jù)驗證的示例代碼

    Java設(shè)置Excel數(shù)據(jù)驗證的示例代碼

    數(shù)據(jù)驗證是Excel 2013版本中,數(shù)據(jù)功能組下面的一個功能。本文將通過Java程序代碼演示數(shù)據(jù)驗證的設(shè)置方法及結(jié)果,感興趣的可以了解一下
    2022-05-05

最新評論