中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

springboot中怎么構建多模塊

發布時間:2021-06-18 18:13:43 來源:億速云 閱讀:281 作者:Leah 欄目:大數據

本篇文章給大家分享的是有關springboot中怎么構建多模塊,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

1. 場景描述

先介紹下背景,項目為什么需要用多模塊?springmvc難道還不夠?

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

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

2. 解決方案

2.1 整體思路

(1)新建springboot項目;

(2)在新建后的springboot項目中新建多個module;

(3)修改pom文件以及刪除多余的文件及文件夾。

2.2 新建springboot項目(springboot項目快速搭建)

(1)new->project

springboot中怎么構建多模塊

(2)next,名字改一下。

springboot中怎么構建多模塊

2.3 新建module

(1)在springboot項目上點擊右鍵->new->module

springboot中怎么構建多模塊

其余方式跟上面的springboot方式一樣,不再多說了。

(2)新建三個module:controller、service、dao,新建后的效果圖如下:

springboot中怎么構建多模塊

2.4 刪除多余的文件及修改配置文件(重點)
2.4.1 刪除多余文件及文件夾

(1)springboot項目

整體刪除src文件夾。

(2)module模塊

將service和dao下面的application啟動類和對應配置文件application.yml/prpperty,一起刪除了,cotroller模塊的不動。

2.4.2 修改pom.xml

根據springmvc架構,幾個module之間依賴順序 controller->service->dao

(1)修改springboot最外層pom.xml

這個是父pom.xml,用于加載一些全局的或者公共的jar包,以及配置打包。

此pom文件中,需要需改兩個地方:

一是修改打包模式為pom;

二是新建modules標簽,將3個module增加進來。

如下:

 <packaging>pom</packaging>

<modules>
        <module>controller</module>
        <module>service</module>
        <module>dao</module>
</modules>

(2)修改cotroller的pom.xml文件

修改<parent>標簽為本項目springboot項目的gav信息和依賴service的jar包信息。

    <!--<parent>-->
        <!--<groupId>org.springframework.boot</groupId>-->
        <!--<artifactId>spring-boot-starter-parent</artifactId>-->
        <!--<version>2.1.6.RELEASE</version>-->
        <!--<relativePath/> &lt;!&ndash; lookup parent from repository &ndash;&gt;-->
    <!--</parent>-->

    <parent>
        <groupid>com.laowang</groupid>
        <artifactid>lwmodul</artifactid>
        <version>0.0.1-SNAPSHOT</version>
    </parent>

     <dependency>
            <groupid>com.laowang</groupid>
            <artifactid>service</artifactid>
            <version>0.0.1-SNAPSHOT</version>
     </dependency>

(3)修改service的pom.xml文件

與controller類似,只是依賴改為dao。

  <!--<parent>-->
        <!--<groupId>org.springframework.boot</groupId>-->
        <!--<artifactId>spring-boot-starter-parent</artifactId>-->
        <!--<version>2.1.6.RELEASE</version>-->
        <!--<relativePath/> &lt;!&ndash; lookup parent from repository &ndash;&gt;-->
    <!--</parent>-->
    <parent>
        <groupid>com.laowang</groupid>
        <artifactid>lwmodul</artifactid>
        <version>0.0.1-SNAPSHOT</version>
    </parent>
    <dependency>
        <groupid>com.laowang</groupid>
        <artifactid>dao</artifactid>
        <version>0.0.1-SNAPSHOT</version>
    </dependency>

(4)修改dao的pom.xml文件

只需修改parent,不需要再配置依賴了。

  <!--<parent>-->
        <!--<groupId>org.springframework.boot</groupId>-->
        <!--<artifactId>spring-boot-starter-parent</artifactId>-->
        <!--<version>2.1.6.RELEASE</version>-->
        <!--<relativePath/> &lt;!&ndash; lookup parent from repository &ndash;&gt;-->
    <!--</parent>-->

    <parent>
        <groupid>com.laowang</groupid>
        <artifactid>lwmodul</artifactid>
        <version>0.0.1-SNAPSHOT</version>
    </parent>

(5)啟動

在Cotroller模塊中使用啟動類ControllerApplication啟動,空項目的話,看到這一行就說明成功了。

Started ControllerApplication in 2.485 seconds (JVM running for 3.639)
2.5 增加web訪問驗證
2.5.1 配置文件

(1)controller下面的application.property改下端口號(不更改的話默認是:8080)。

server.port=9000

(2)增加依賴

<dependency>
      <groupid>org.springframework.boot</groupid>
      <artifactid>spring-boot-starter-web</artifactid>
</dependency>
2.5.2 啟動類

在啟動類ControllerApplication增加一個標簽(@RestController)和一個請求方法(home())。

package com.laowang.controller;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@SpringBootApplication
public class ControllerApplication {

    public static void main(String[] args) {
        SpringApplication.run(ControllerApplication.class, args);
    }
    
    @RequestMapping("/")
    public String home() {
        return "i'm 軟件老王,歡迎光臨!";

    }
}
2.5.3 效果圖

springboot中怎么構建多模塊


以上就是springboot中怎么構建多模塊,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

麦盖提县| 永州市| 湄潭县| 于都县| 民县| 图片| 古浪县| 美姑县| 渝北区| 中山市| 天等县| 虹口区| 家居| 长顺县| 钟祥市| 新昌县| 西贡区| 扶余县| 乐亭县| 巫山县| 满城县| 舞阳县| 定日县| 白城市| 兴山县| 大悟县| 宜宾市| 哈巴河县| 通州区| 东台市| 南陵县| 平阴县| 合肥市| 吉林省| 永和县| 稷山县| 城固县| 宜春市| 驻马店市| 辛集市| 石棉县|