Springboot + Dubbo 構建多模塊項目 (一)

     maven多模塊項目通常由一個父模塊和若干個子模塊構成,每個模塊都對應着一個pom.xml。它們之間通過繼承和聚合(也稱作多模塊)相互關聯。多模塊適用於一些比較大的項目,通過合理的模塊拆分,實現代碼的複用,便於維護和管理。

項目的總體目錄如下所示:

springboot-parent ------------ maven項目父目錄

springboot-common ------------公用模塊,用於存放一些實體類

springboot-interface -----------接口模塊,用於存放定義的接口

springboot-service ------------接口實現模塊,處理業務邏輯

springboot-api --------------- controller層,用於外部調用

1.創建maven項目父目錄

這裏我們先來溫習下groupId、artifactId、package這三個參數的一般填寫規範。

groupId和artifactId統稱爲“座標”,是爲了保證項目唯一性而提出的。groupId是項目組織唯一的標識符,實際對應JAVA的包的結構,ArtifactID是項目的唯一的標識符,實際對應項目的名稱,就是項目根目錄的名稱。groupId一般分爲多個段,一般第一段爲域,第二段爲公司名稱。舉個apache公司的tomcat項目例子:這個項目的groupId是org.apache,它的域是org,公司名稱是apache,artifactId是tomcat。包結構package最好是以groupId.artifactId打頭的

此項目創建的是Maven項目,對應得pom.xml代碼如下:

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

    <groupId>com.myapp</groupId>
    <artifactId>springboot-parent</artifactId>
    <packaging>pom</packaging>
    <version>1.0-SNAPSHOT</version>
    <modules>
        <module>springboot-interface</module>
        <module>springboot-api</module>
        <module>springboot-service</module>
        <module>springboot-common</module>
    </modules>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter</artifactId>
                <exclusions>
                    <exclusion>
                        <groupId>org.springframework.boot</groupId>
                        <artifactId>spring-boot-starter-logging</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
        </dependencies>
    </dependencyManagement>
    <dependencies>
    <!--日誌-->
    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-api</artifactId>
        <version>2.7</version>
    </dependency>
    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-core</artifactId>
        <version>2.7</version>
    </dependency>
    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-web</artifactId>
        <version>2.7</version>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>1.7.25</version>
    </dependency>
    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-slf4j-impl</artifactId>
        <version>2.7</version>
    </dependency>
    </dependencies>
</project>

2.創建springboot-common公用模塊

在springboot-parent 項目上右擊創建model項目,此模塊使用Maven創建,命名springboot-common,用於存放實體。

3.創建springboot-interface 接口模塊

在springboot-parent 項目上右擊創建model項目,此模塊使用Maven創建,命名springboot-interface,用於存放接口。

package com.myapp;

/**
 * @author :zzb
 * @createDate :2019/6/25 14:13
 * @desc :
 */
public interface HelloService {

   public String sayHello(String name);
}

下部分內容,請瀏覽下一篇 Springboot + Dubbo 構建多模塊項目 (二)

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章