简述:通常我们开发的项目结构是由多个modules项目组合而成,并且由有个parent的maven项目整体管理。废话少说,直接进入创建过程。
创建parent项目
1、打开idea工具,按照下图操作,点击Project;
2、注意这里不要勾选模板,用模板创建过maven项目的小伙伴都知道模板创建项目非常慢,所以这里不要选模板,需要的文件夹我们后面自己来创建就可以了。所以这个页面直接点击下一步。
3、填入GroupId(公司组织)和Artifactid(模块的名字)、版本号默认即可,点击下一步,如下图所示:
4、创建project name(项目名称),此处可以修改项目名称,默认带出来的内容是healthwj,我改成了health-wj(健康*),点击下一步继续;
5、一个project就创建好了,我们的project主要用来管理第三方依赖,所以这里的src目录要删掉,此时parent项目就创建完毕了。
创建子模块
1.选中health-wj项目,右键单击new ---> Module
2、这里继续不选择模板,和创建parent项目一样直接点击下一步:
3、填入子模块的名字,然后点击下一步:
4、直接finish就创建好了一个子模块: 默认回显内容是healthclient,我修改为health-client;
5、创建完成的子项目结构入下图所示:
6、重复上面的步骤,把项目结构创建完整,如下图所示:
此时创建的都是普通的Java项目,而不是JavaWeb项目,在一个JavaWeb项目中,我们的模块可能分为client、commons、dao、domain、rpc、service、web等几个模块,这些模块中除了web模块是web项目结构,其他模块都是普通的Java项目,本例中web项目现在还是java项目,我们将它改造为一个web项目。
1、在打开的页面中,先选择health-web,然后点击左上角的+号,选择web,如下:
2、在新打开的页面中,做如下操作:
3、修改web.xml文件的路径,如下;
OK ,至此,我们就将health-web成功的改造成了一个web项目,此时我们的项目结构如下:
项目构建
接下来我们health-service模块中提供一个方法,然后在health-web中来调用,我们看看如何实现。
1.在health-service中添加HelloWorld类,如下:
2.在health-web中引用health-service模块,修改health-web的pom.xml文件即可,如下:
3、在health-web中添加index.jsp页面,在该页面中调用health-service模块中的方法,内容如下
4、修改health-web的pom.xml文件,使之在构建时生成war文件,其他的不用修改(默认生成jar文件)。如下:
5、做好这一切之后,在IDEA的右侧边栏找到Maven Project 点开,找到parent项目,点开LifeCycle,双击package,打成war包
6、此时默认的war包名字带版本号,我们可以修改pom文件,调整war包的名字。重新打包后入下图所示,war包名字已经被修改。
配置Tomcat运行web项目
1、配置Tomcat
2、部署web项目,设置Deployment选项卡;
idea找不到war exploded包的做法:点击project structure->Artifacts->Web Application:Exploded->From Modules。
新增一个health-war包
新增exploded文件,修改name(exploded文件的名字)和Output directory(war包的文件路径)
增加war包文件
修改name(war文件的名字)和Output directory(war包的文件路径)
OK,可以开心的撸代码了