SpringBoot搭建简单多模块项目

学习spring boot 的多模块开发形式。

1.项目结构搭建;

  1. 选择 spring init 创建第一个项目作为根项目(父项目),为了方便选择maven模式初始化该项目。包名应保持后续统一,所以不要乱取。
  2. 根项目构建好后,删除 @.mvn @src 文件夹,根目录下的其余文件可只保留.iml后缀文件与pom文件。
  3. (Web模块)右键根项目,新增module。同样选用spring init进行该模块的构建,该模块将作为启动类所在的主模块,包名与根项目统一。文件保留形式参考第一步。
  4. (Service模块)继续右键根项目,新增module。本次选用Maven 进行模块构建,因为maven会自动选择根项目作为当前模块的父模块。
  5. (Dao模块)右键新增。同第四步。
  6. 补充说明,模块数量与名称仅供参考,如上述三模块式结构很简单且后续易操作,根据个人情况可适当修改。

2.项目基础环境配置;

  1. 首先修改父项目的pom文件,完整移除plugin标签及内容,因为spring boot maven plugin在启动类所处的模块中才会用到,父模块不删除这部分的话 会报错。参考以下代码
<modelVersion>4.0.0</modelVersion>
<packaging>pom</packaging>
<modules>
    <module>bg-service</module>
    <module>bg-dao</module>
    <module>bg-web</module>
</modules>
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.6.7</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.graduation.design</groupId>
<artifactId>bs-bg</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>bs-bg</name>
<description>Demo project for Spring Boot</description>
<properties>
    <java.version>1.8</java.version>
</properties>

<dependencyManagement>
    <dependencies>
       
    </dependencies>
</dependencyManagement>

说明:
==============================================================================
<packaging>pom</packaging>
多模块结构的标识。
<modules>
项目模块整合。
<dependencyManagement>
管理子模块依赖。统一在父项目的此标签内引入会用到的依赖,之后在对应的子模块pom文件中再次引入要使用的依赖,才算真正将依赖引入到子模块中!!!==============================================================================

        2.修改子模块的pom文件,参考以下代码

<parent>
    <artifactId>bs-bg</artifactId>
    <groupId>com.graduation.design</groupId>
    <version>0.0.1-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>

<artifactId>bg-service</artifactId>
<dependencies>
    <dependency>
      
    </dependency>
</dependencies>

        3.处理模块间的依赖。父项目自然不用依赖子模块内的东西。子模块间的依赖遵循功能实现的流程。如本文章中的三个子模块(web、service、dao)。三者间的联系为  dao -> service ->web。实现参考以下代码。

service模块加入dao模块依赖

<dependency>
    <groupId>com.graduation.design</groupId>
    <artifactId>bg-dao</artifactId>
    <version>0.0.1-SNAPSHOT</version>
</dependency>

        4.完成后刷新maven!

3. 项目模块介绍;

  • web    主启动类所在的模块,controller、config、filter等文件也都在此模块内。
  • service    接口及业务逻辑处理在该模块内实现。
  • dao    与数据库交互的模块,mapper、entity等在此模块内。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值