Maven的拆分聚合思想 Maven教程 拆分与聚合 模块拆分 低拆分高聚合

本文介绍了Maven的拆分与聚合思想,旨在解决代码复用问题。通过将大型项目拆分成多个独立的模块,每个模块拥有自己的坐标,可以单独开发和维护。当需要构建完整项目时,Maven的聚合功能允许将这些模块聚合在一起。在实际开发中,采用继承和聚合可以减少重复配置,提高代码复用率,简化项目管理。例如,通过创建父工程来管理共用的配置,子工程作为模块继承父工程,并实现特定功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Maven的拆分聚合思想

一、问题引入

  • 在我们前面创建SSM整合案例里面,可以看出我们普通项目中的结构
    在这里插入图片描述
  • 但是存在一个问题! 例如!

卖家查看订单信息,需要查询数据库,这是DAO层的任务
卖家查看订单信息,需要查询数据库,这也是DAO层的任务

  • 这就牵扯到代码的可重用,想要的效果是不同工程的相同任务或者模块可以使用同一套jar包
    这里的 jar 包 指 dao 和 domain 封装起来看成订单读取任务的 jar 包。

如果只是简单的复制解决,那么复制多少代码需要维护多少
代码复用,就是将其拆分出来一个独立工程,只需要维护一份就够了
在这里插入图片描述

二、maven的聚合思想

  • Maven解决代码的复用问题
    • 将一个完整的项目拆分为不同的模块,每个模块都有独立的坐标,哪里需要这些模块,直接导入坐标即可
    • 今后如果公司开发一个新项目,我们先考虑问题不是dao, service, utils, domain如何编写,我们要考虑的是,dao, service, utils, domain 这些模块是否已经存在,如果存在直接弓|用。

我们可以把拆分零散的模块聚合到一起编写一个完整的项目 ,这就是maven聚合思想

2.1 工程与模块的概念

2.1.1 工程和模块的区别
  • 工程不等于完整的项目,模块也不是完整的项目,一个完整的项目看的是代码完成。

一个完整的项目和此项目中的模块和工程没有关系

  • 工程只能使用自己内部资源,工程先天具有独立性

  • 模块不是独立的,模块属于父工程,先天就就可以使用父工程中的资源

  • 平级直接引用是依赖依赖是后天建立的

在实际开发中,如果传递依赖丢失,也就是jar包无法导入,那么直接再导入一次

三、具体示例

  • 创建工程与模块
    在这里插入图片描述

  • 何为继承:
    继承是为了消除重复,如果将 dao、 service、 web 分开创建独立的工程则每个工程的 pom.xml
    文件中的内容存在重复,比如:设置编译版本、锁定 spring 的版本的等,可以将这些重复的
    配置提取出来在父工程的 pom.xml 中定义

  • 何为聚合:
    项目开发通常是分组分模块开发, 每个模块开发完成要运行整个工程需要将每个模块聚合在一起运行,比如: dao、 service、 web 三个工程最终会打一个独立的 jar/war 运行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值