IntelliJ Idea14 建立Maven多模块项目,多继承,热部署配置总结(一)

1、项目结构

multi-module-parent是主工程,里面包含两个模块(Module): java

在这里插入图片描述

module-web是应用层,用于界面展现,依赖于module-core参的服务。 module-core层是服务层,用于给web层提供服务。git

跟java的package相似,通常是按照的功能模块分module,好比:sso/cas/portal/activity/system,具体可根据须要github

在这里插入图片描述
以上两种方式均可以,如今更多的应该是倾向第一种按照功能来解耦,module前期能够配置成jar,后期也能够创建独有的页面,独立的站点,经过子域名的方式访问,各个功能模块解耦,趋向微服务架构

2、构建项目

2.1 Parent Project

新建一个空白标准maven project(不要选择Create from archetype选项) web

在这里插入图片描述
填写项目坐标,获得一个标准的maven项目,由于该项目是做为一个Parent project存在的,能够直接删除src文件夹(父文件下只有本身的pom文件和模块文件)。
在这里插入图片描述

2.2 增长module-web模块(Module)

选择从archetype建立(选择webapp选项) 编程

在这里插入图片描述
groupId和version继承自Parent project,这里只须要填写artifactId便可。
在这里插入图片描述

注意:这里Add as module to 有的人会删除,若是删除了建立的模块文件就会和父模块(parent)同级了,这里看我的喜欢。文件夹结构怎么样都行,重要的pom文件里面的父子结构要设置正确。架构

在这里插入图片描述

2.3增长module-core模块

用一样的方法建立module-core模块(不过该模块是一个空白maven标准项目,不要从archetype建立) app

在这里插入图片描述

2.4 得最终项目结构

在这里插入图片描述

2.5 关键几点

1,Parent project和各个Module拥有独立pom文件 2,Parent project用于组织不一样的Module,不实现逻辑 3,Module集成Parent project的groupId和version,Module只须要指定本身的artifactId便可。webapp

3、添加项目依赖

在这里插入图片描述
在这里插入图片描述
上面的操做是添加web对core模块的依赖,完成上述操做后core中public的类已经在web模块中可见了,若是不加模块依赖,web下的jsp用不了core里面的方法,会抱错:
在这里插入图片描述

此外还须要在web的pom文件中增长对core的依赖,这个主要是为了web里面的Java模块调用core的服务: jsp

在这里插入图片描述
以上,项目依赖的添加已经完成。

4、开始编程

4.1 module-core模块编程

在core模块中增长一个Service类(SimpleService.java): maven

在这里插入图片描述

4.2 module-web模块编程

修改web下的jsp文件,调用core服务:

在这里插入图片描述

5、运行

在这里插入图片描述
在这里插入图片描述
若是想了解热部署和继承关系等配置请看: IntelliJ Idea14 建立Maven多模块项目,多继承,热部署配置总结(二)

项目demo地址:github.com/BothEyes199…

相关文章
相关标签/搜索