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元素中的地址–本地仓库–远程仓库 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Boot项目结构通常包含代码层结构、资源目录结构和测试目录结构。代码层结构用于组织应用程序的源代码,资源目录结构用于存放配置文件和静态资源,测试目录结构用于编写单元测试和集成测试。 一个典型的Spring Boot项目结构示例如下所示: 1. 代码层结构: - src/main/java:包含应用程序的Java源代码。 - com.example.demo:包名,根据实际情况来命名。 - controller:包含控制器类,处理HTTP请求和响应。 - service:包含服务类,实现业务逻辑。 - repository:包含数据访问类,与数据库进行交互。 - entity:包含实体类,用于映射数据库表。 - exception:包含异常类,处理异常情况。 - src/main/resources:包含应用程序的配置文件和静态资源。 - application.properties:应用程序的配置文件,用于配置数据库连接、端口号等信息。 - static:静态资源文件夹,包含CSS、JavaScript、图片等文件。 - templates:模板文件夹,包含Thymeleaf或Freemarker等模板引擎的模板文件。 2. 资源目录结构: - src/main/resources:包含配置文件和静态资源。 - application.properties:应用程序的配置文件,用于配置数据库连接、端口号等信息。 - static:静态资源文件夹,包含CSS、JavaScript、图片等文件。 - templates:模板文件夹,包含Thymeleaf或Freemarker等模板引擎的模板文件。 3. 测试目录结构: - src/test/java:包含单元测试和集成测试的Java源代码。 - com.example.demo:包名,与代码层结构相对应。 - controller:包含控制器类的单元测试。 - service:包含服务类的单元测试。 - repository:包含数据访问类的单元测试。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值