一、前言
搭建聚合项目之前,不妨先想一下什么是聚合工程,其有何优点,我们在实际开发中真的一定就要搭建聚合项目吗?
对于一个大型的项目,如果我们直接作为一个工程开发,由于相互之间的依赖我们只能从头到尾由一组人开发,否则就会出现一个类好多人开发,相互更改的混乱局面,这个时候我们就将项目进行了横向和纵向的拆分。
所谓的横向的拆分就是我们平常说的三层架构,将项目分成了web层,service层、dao层(web层也被叫做表现层,service层也被叫做业务层,dao层也被持久层),可以理解为将一个功能模块的不同调用过程进行了水平方向的拆分。
所谓的纵向拆分就是将一个项目的多个功能模块进行了,可以理解为为了完成一个系统,深度(纵向)分析需要有哪些功能,然后将这些功能独立出来,进行了(纵向)拆分。
横向拆分后,每个功能模块进行了单独的开发之后,项目整合的时候就需要有一个能够整合这些项目或者模块的工程,这就是所谓聚合工程的意义。
同时,聚合工程能够通过利用模块继承的方式,实现模块之间的高可用性
所以,如果是个人搭建的小型项目或者实验性的demo的话,专门构建聚合工程可能会略微笨重和臃肿,但是对于企业实际开发,使用聚合工程来进行开发还是相当有必要的,有条理的项目架构将能够让项目的规划和开发变得清晰,也能更易于做出扩展。
二、使用IDEA构建聚合项目
1. 项目结构设置:
demo-root
|
demo-common (common继承root)
|
demo-pojo (pojo继承common)
|
demo-mapper(mapper继承pojo)
|
demo-service(service继承pojo)
2. 打开idea,new 一个maven project
选择maven project
根据自己需要填写artifactId和groupId后finish即可
构建完成后,项目结构如下:
3.在项目根目录下构建新模块
还是选择maven项目,点击next
填好必要的artifactId等信息后finish即可
4. 仿照上面步骤分别创建其他模块
结果如上图 ↑
5. 根据模块的依赖关系,手动为各个模块添加上依赖
6. 验证是否成功添加依赖
在根目录下执行maven clean install
可以看到,各个模块根据我们设置的依赖顺序依次打包完成,聚合项目构建成功!