将一个简单的javaweb项目转换成maven多模块父子结构工程

为什么要用多模块管理项目?

由于实际开发中对于某些代码可能需要重复使用,这时为了提高重用性,就可以利用模块的引入来方便的使用了,对于后期代码的维护也是非常方便的,修改的话只需要修改一处就行,非常便于管理。除此之外,还有不少其他方面的好处。

前提:

假设一个简单的web项目分为dao、service、controller这三层。

步骤:

1.按照maven工程构建步骤新建一个工程作为父工程,点击maven后直接下一步,不用像以前一样选择一个骨架。
将一个简单的javaweb项目转换成maven多模块父子结构工程
2.填写相应信息,直接下一步,之后点击finish
将一个简单的javaweb项目转换成maven多模块父子结构工程
3.可以删除掉.idea和src,在工程的pom文件中引入相应的jar包坐标。将一个简单的javaweb项目转换成maven多模块父子结构工程
4.开始创建三个模块,分别与原来的dao、service、controller层对应,右击工程名–>New–>Module进行模块创建,也选择maven工程,跟工程创建大同小异。注意controller层模块要选择webapp骨架。
将一个简单的javaweb项目转换成maven多模块父子结构工程
5.我们可以看到在父工程和子模块各自的pom文件中已经有了相应的父子关系的信息。
6.将原来工程中各层的包以及下属的类引入相应的模块中的src/main/java文件夹下(controller对应的模块需要自己建一个java文件夹,并标记为Source Root),实体类放在dao层包的domain包下。
7.在service层对应的模块下添加dao层对应模块的坐标,groupId和工程的groupId一样,artifactId处为模块名。
将一个简单的javaweb项目转换成maven多模块父子结构工程
8.按照相同办法在controller层对应的模块的pom文件中引入service层对应的模块的坐标。
9.关于配置文件的说明:将原来各层的配置文件放在各层对应的模块下的资源文件夹下,spring配置文件是ssm三层的核心配置文件,将spring配置文件里面的各层配置内容拆分为各个配置文件,放入相应层的资源文件夹下。
在controller层对应的模块下的资源文件夹下建立一个总的spring配置文件,用import标签引入拆分开的spring配置文件。
将一个简单的javaweb项目转换成maven多模块父子结构工程

到此,一个简单的javaweb项目就转成为多模块的项目。