springboot多项目结构实现

 更新时间:2023年01月11日 09:27:59   作者:red_delia  
本文主要介绍了springboot多项目结构实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

微服务的目录结构一般分为如下几个模块:

 当我们做的项目稍微大一点之后,就会经常遇到需要把不同的模块分离出来的时候,比如微信的朋友圈、微信支付、聊天服务等模块,像这种微服务项目一般都会把base、common、前端抽离出来。

common:用于存放一些公用的模块,比如枚举类(成功和失败返回数据),对外公开,pom里面不含任何和业务相关的东西。
base:一个写业务逻辑的包,把项目公用的业务模块抽出来放到项目里,不对外公开。在base的pom文件里包含了所有公用业务逻辑的依赖,在base里引用之后,其他的业务模块就不需要再进入这些依赖了(依赖传递)。

注意在其他业务逻辑的模块里面,都需要引入base:

base依赖于common,因为实现base里面的业务也需要用到common里的枚举等。

 在父项目的pom文件里面有一个<dependencyManagement> 标签,像这样:

 所有导入的依赖都被放到了<dependencyManagement> 标签里面,

<dependencyManagement> 的作用:

管理依赖版本号,微服务项目如果把所有模块的依赖各自引入,会出现版本冲突的问题,所以<dependencyManagement>充当了一个全局的依赖管理。当某个 Maven 模块需要具体引用某依赖的时候,直接在集合中指定若干个,这样就可以实现整个项目依赖的全局管理,不至于零碎地分布在每个模块中。在此标签元素中声明了所需依赖的版本号等信息,当子项目引入此依赖 jar 包时就需要列出版本号,如果不添加此标签的话子模块的pom文件就会直接继承

 relativePath的作用:

默认值为../pom.xml,会从本地路径中获取parent的pom。

如果是一个空值,表示将始终从仓库(父级的pom文件)中获取,不从本地路径获取。

maven构建jar包时候查找顺序:relativePath元素中的地址–本地仓库–远程仓库 

到此这篇关于springboot多项目结构实现的文章就介绍到这了,更多相关springboot多项目结构内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Spring事件发布监听,顺序监听,异步监听方式

    Spring事件发布监听,顺序监听,异步监听方式

    这篇文章主要介绍了Spring事件发布监听,顺序监听,异步监听方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • SpringBoot自定义启动界面的实现代码

    SpringBoot自定义启动界面的实现代码

    实现自定义启动动画是一项有趣的任务,虽然Spring Boot本身不提供内置的动画功能,但可以通过一些技巧来实现,本文主要以Demo的形式展示,再者下面的Demo都可以联合使用,需要的朋友可以参考下
    2024-07-07
  • Java实现的文件上传下载工具类完整实例【上传文件自动命名】

    Java实现的文件上传下载工具类完整实例【上传文件自动命名】

    这篇文章主要介绍了Java实现的文件上传下载工具类,结合完整实例形式分析了java针对文件上传下载操作的相关实现技巧,并且针对上传文件提供了自动命名功能以避免文件命名重复,需要的朋友可以参考下
    2017-11-11
  • java多态的向上转型的概念及实例分析

    java多态的向上转型的概念及实例分析

    在本篇内容里小编给大家整理的是一篇关于java多态的向上转型的概念及实例分析,对此有兴趣的朋友们可以跟着学习下。
    2021-05-05
  • 解析springboot包装controller返回值问题

    解析springboot包装controller返回值问题

    这篇文章主要介绍了springboot包装controller返回值问题,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-12-12
  • Java之WeakHashMap源码浅析

    Java之WeakHashMap源码浅析

    这篇文章主要介绍了Java之WeakHashMap源码浅析,WeakHashMap从名字可以得知主要和Map有关,不过还有一个Weak,我们就更能自然而然的想到这里面还牵扯到一种弱引用结构,因此想要彻底搞懂,我们还需要知道四种引用,需要的朋友可以参考下
    2023-09-09
  • java控制Pdf自动打印的小例子

    java控制Pdf自动打印的小例子

    java控制Pdf自动打印的小例子,需要的朋友可以参考一下
    2013-04-04
  • IDEA引入本地jar包的几种方法

    IDEA引入本地jar包的几种方法

    本文主要介绍了IDEA引入本地jar包的几种方法,文中通过图文结合的方式码介绍的非常详细,对大家的学习或工作有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2024-01-01
  • 如何将文件流转换成byte[]数组

    如何将文件流转换成byte[]数组

    这篇文章主要介绍了如何将文件流转换成byte[]数组,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • 解决RestTemplate 请求url中包含百分号 会被转义成25的问题

    解决RestTemplate 请求url中包含百分号 会被转义成25的问题

    这篇文章主要介绍了解决RestTemplate 请求url中包含百分号 会被转义成25的问题,具有很好的参考价值,希望对大家有所帮助。
    2021-10-10

最新评论