当前位置: 首页 > news >正文

SpringBoot(十七)创建多模块Springboot项目

在gitee上查找资料的时候,发现有不少Springboot项目里边都是嵌套了多个Springboot项目的。这个玩意好,在协作开发的时候,将项目分成多个模块,有多个团队协作开发,模块间定义标准化通信接口进行数据交互即可。

这个好这个。我之前创建的博客项目是单模块的SpringBoot项目,那我创建一个多模块的SpringBoot项目来将我的博客改成多模块项目。正好后边可以用这个尝试下微服务。

下边记录一下SpringBoot多模块项目的创建流程

一:创建父工程

首先我们先在IDEA中创建一个父项目,使用Maven托管。如下图所示:

1.jpg

点击下一步,不需要添加任何依赖,点击创建完成即可。

项目创建成功如下图所示:

2.jpg

删除图上红框标注的所有文件,只保留pom.xml

二:创建Utils子模块

这个跟创建父工程的流程是一样的,唯一不同的就是第一步,如下图所示:

3.jpg

4.jpg

建议创建子模块的包名是一致的,我这里使用的包名是:com.modules

子模块创建成功之后,我们配置一下子模块的pom.xml使其成为父工程的子工程。

在子工程pom.xml中添加

<!-- 配置父工程   --><parent><groupId>com.modules</groupId><artifactId>NacosProject</artifactId><version>0.0.1-SNAPSHOT</version></parent>

如下图所示:

5.jpg

接着在父工程的pom.xml中配置:

<!--将子模块放在一堆    start   --><modules><module>NacosUtils</module></modules><!--将子模块放在一堆    end     -->

因为我这里创建的utils子模块只存储以后项目中需要的公共的utils公共文件,因此不需要启动类,也就不需要配置resources下方的application.properties文件。如下图所示:

6.jpg

删除成功之后,我们在com.modules.nacosutils目录下创建Utiils.java文件:

package com.modules.nacosutils;public class Utils{public static void utils(){System.out.println("我是NacosUtils项目中的Utils类的utils方法");}}

这个项目创建到这里即可,接下来我们继续创建其他子项目。

三:创建service子模块

创建NacosService子模块。具体参照NacosUtils创建截图,这里不再赘述。

配置方式跟NacosUtils方式一致。

在NacosService项目中的pom.xml中添加父项目信息:

<!-- 配置父工程   --><parent><groupId>com.modules</groupId><artifactId>NacosProject</artifactId><version>0.0.1-SNAPSHOT</version></parent>

添加对NacosUtils项目的依赖:

<dependency><groupId>com.modules</groupId><artifactId>NacosUtils</artifactId><version>0.0.1-SNAPSHOT</version><scope>compile</scope></dependency>

在父项目的pom.xml中添加子项目信息:

<!--将子模块放在一堆    start   --><modules><module>NacosUtils</module><module>NacosService</module></modules><!--将子模块放在一堆    end     -->

NacosService模块主要存放三层架构中的service逻辑层,主要用来处理逻辑,因此这里也不需要启动类以及resources下方的application.properties文件,删除。

在com.modules.nacosservice目录下创建nacosService.java文件

package com.modules.nacosservice;import com.modules.nacosutils.Utils;import org.springframework.stereotype.Service;@Servicepublic class nacosService{public void nacos(){// 调用 NacosUtils项目下的Utils类Utils.utils();System.out.println("我是NacosService项目中的nacos方法");}}

这个模块先创建到这里

四:创建controller子模块

创建NacosController子模块。具体参照NacosUtils创建截图,这里不再赘述。

在NacosController项目中的pom.xml中添加父项目信息:

<!-- 配置父工程   --><parent><groupId>com.modules</groupId><artifactId>NacosProject</artifactId><version>0.0.1-SNAPSHOT</version></parent>

添加对NacosService项目的依赖:

<dependency><groupId>com.modules</groupId><artifactId>NacosService</artifactId><version>0.0.1-SNAPSHOT</version><scope>compile</scope>
http://www.lryc.cn/news/484571.html

相关文章:

  • Vue.js 高质量翻页功能的完整开发指南
  • android dvr黑屏
  • css文字间距撑满横向距离
  • 【Unity基础】对比OnCollisionEnter与OnTriggerEnter
  • 算法训练(leetcode)二刷第二十五天 | *134. 加油站、*135. 分发糖果、860. 柠檬水找零、*406. 根据身高重建队列
  • Springboot 整合 itext 实现PDF文件合并,识别图片则转成PDF拼接
  • TypeScript 中的 ! 和 ? 操作符
  • 开源三代示波器的高速波形刷新方案开源,支持VNC远程桌面,手机,Pad,电脑均可访问(2024-11-11)
  • 谷歌推出设备内置人工智能,实时向手机用户发出诈骗电话警报
  • AI换人脸facefusion项目口型同步‌API化改造及部署
  • 移动端问题
  • Linux网络——网络初识
  • 从华为到创业公司
  • Vue 组件通信及进阶语法
  • vue文本高亮处理
  • androidstudio入门到放弃配置
  • NLP论文速读(谷歌出品)|缩放LLM推理的自动化过程验证器
  • 【Linux学习】【Ubuntu入门】1-4 ubuntu终端操作与shell命令1
  • 【Qt】Qt在窗口中加载Web界面的方法汇总
  • Java集合框架之Collection集合遍历
  • 基于STM32的智能充电桩:集成RTOS、MQTT与SQLite的先进管理系统设计思路
  • windows 查看yolo11 是否安装了cuda
  • 机器学习【激活函数】
  • 【OpenEuler】配置虚拟ip
  • 数据分析师证书怎么考
  • 【人工智能】text2vec-large-chinese模型搭建本地知识库
  • 前端入门一之ES6--递归、浅拷贝与深拷贝、正则表达式、es6、解构赋值、箭头函数、剩余参数、String、Set
  • DevOps工程技术价值流:加速业务价值流的落地实践与深度赋能
  • IP数据云 识别和分析tor、proxy等各类型代理
  • vue2 自动化部署 shell 脚本