Java一步一步构建web系统 在IDEA下用Maven搭建多模块项目
1、需求
做一个项目会有很多模块,主要是方便复用,通过各个模块之间聚合。模块也可以独立出来,如公用类库,也可以在做其它项目中使用。该文的实例会有两个模块:分别为dallin-web模块,dallin-utils工具类模块
2、新建一个Maven父项目
- 打开IDEA工具,通过file——new——project——maven 如下图所示

2.不勾选Create from archetype,直接点击Next,出现如下界面

3.填写好GroupId和ArtifactId信息后,点击Next
4.填写项目名称,该项目名称为spring-demo-parent,点击Next,出现如图界面

3、建立各个子模块
1.选中建立好的项目后,右击弹出--->New--->Module,如图所示

2.之后弹出来的页面中,直接点击Next,出来如下界面

3.在ArtifactId中我填写dallin-untils(由于会继承了刚创建的父级项目,其它的信息不能修改),填完后,我点击Next
4.填写好后项目名称后,继续点击Next,创建完成。
5.我同样的方式,继续创建dallin-web项目,不过在需要勾选未webapp项目,如下图

6.我选择好创建webapp,其它和上面一样,一直到该项目创建完成!
创建好的web项目,现在配置好tomcat环境后也是能够跑起来的。我们不急跑起来,先去添加好模块之间的关系。
4、模块之间的关联关系
已经创建好了两个子模块,那就需要去添加两个子模块之间的关联。我们知道两个子项目的是web项目会引用utils项目的
子模块关系。
其中dallin-web 是依赖于dallin-utils。我们只需要在dallin-web模块中的POM.XML文件中添加如下图
父模块和子模块。
我们知道了两个模块之间的关系,那parent项目是如何找到wedallin-web子项目和dallin-utils子项目的。在parent里面的POM里面可以找到
<modules>
<module>dallin-utils</module>
<module>dallin-web</module>
</modules>
子项目有又是如何关联父项目的,在相应的子项目中的pom.xml文件中,有
<artifactId>spring-demo-parent</artifactId>
<groupId>com.dallin</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
5、 配置tomcat
1.在Run/Debug Configurations -->点击左上角的“+” -->Tomcat Server --> Local 如下图所示

2.点击Local弹出的窗口中,Deployment --->右边的那个“加号”,选择dallin-web:war exploded

3.启动项目,看到Hello Word

本文pdf版下载:pdf版本下载
本文源代码下载:源码下载
代码项目地址:https://github.com/emaisi/spring-demo-parent
Java一步一步构建web系统 在IDEA下用Maven搭建多模块项目的更多相关文章
- 基于Spring、SpringMVC、MyBatis、Druid、Shrio构建web系统
源码下载地址:https://github.com/shuaijunlan/Autumn-Framework 在线Demo:http://autumn.shuaijunlan.cn 项目介绍 Autu ...
- 2019最新 Java商城秒杀系统的设计与实战视频教程(SpringBoot版)_2-2微服务项目的搭建-SpringBoot搭建多模块项目二
一些重要的配置文件直接复制过来了 jdbc和shiro的配置 application.properties里面的相关配置项的含义 日志界别的配置 数据返回到前端的json的配置 数据源的配置 需要新建 ...
- 照葫芦画瓢系列之Java --- eclipse下使用maven创建Struts 2项目
一.创建Maven项目 http://www.cnblogs.com/zhanqun/p/8425571.html 二.添加struts2核心依赖包以及其他依赖项 打开pom.xm配置界面 点击Add ...
- maven之一——多模块项目构建
参考这个帖子: http://www.cnblogs.com/xdp-gacl/p/4242221.html
- Java秒杀系统实战系列~构建SpringBoot多模块项目
摘要:本篇博文是“Java秒杀系统实战系列文章”的第二篇,主要分享介绍如何采用IDEA,基于SpringBoot+SpringMVC+Mybatis+分布式中间件构建一个多模块的项目,即“秒杀系统”! ...
- Web系统如何做到读取客户电脑MAC等硬件信息且兼容非IE浏览器
我们在实际Web应用中,可能会遇到“需要限定特定的电脑或用户才能使用系统”的问题. 对于一般情况来说,我们用得最多的可能是使用ActiveX控件的方法来实现,但此方案只适用于IE浏览器.为了能兼容不同 ...
- SpringBoot+Gradle构建多模块项目
1 概述 Gradle由于构建速度比Maven快,且比Maven灵活,因此很多后端的应用都使用了Gradle进行构建,但一个问题是,Gradle的多模块项目比较难构建,再加上Gradle的更新非常快, ...
- SpringBoot+Maven 多模块项目的构建、运行、打包实战
前言 最近在做一个很复杂的会员综合线下线上商城大型项目,单模块项目无法满足多人开发和架构,很多模块都是重复的就想到了把模块提出来,做成公共模块,基于maven的多模块项目,也好分工开发,也便于后期微服 ...
- 【web maven】新建的项目 controller也有,从前台跳转后台 无法找到对应的controller
碰上很 愣的问题: 使用maven搭建项目完成,项目页面写好,实体.Dao.Service.Controller都有了,但是指定Controller中的某个方法中一直不能从前台进入后台 原因: 没有w ...
随机推荐
- D3.js 学习( 一)
<html> <head> <meta charset="utf-8"> <title>第三课:为柱形图添加坐标轴</titl ...
- KnockoutJS 3.X API 第三章 计算监控属性(5) 参考手册
计算监控属性构造参考 计算监控属性可使用以下形式进行构造: ko.computed( evaluator [, targetObject, options] ) - 这种形式是创建一个计算监控属性最常 ...
- 为什么SQL语句Where 1=1 and在SQL Server中不影响性能
最近一个朋友和我探讨关于Where 1=1 and这种形式的语句会不会影响性能.最后结论是不影响. 虽然结论正确,但对问题的认识却远远没有解决问题的根本.实际上在T-SQL语句的书写过 ...
- Topology and Geometry in OpenCascade-Topology
Topology and Geometry in OpenCascade-Topology eryar@163.com 摘要Abstract:本文简要介绍了几何造型中的边界表示法(BRep),并结合程 ...
- OpenCascade Tcl vs. ACIS Scheme
OpenCascade Tcl vs. ACIS Scheme eryar@163.com 摘要Abstract:本文通过OpenCascade的Tcl/Tk和ACIS的Scheme的对比来说明脚本语 ...
- java集合框架之List
一.List: 1. 特有的常见方法:(有个共性特点就是都可以操作角标) (1).添加 void add(int Index , E element):在list的指定位置插入元素 void add ...
- 哈夫曼树(二)之 C++详解
上一章介绍了哈夫曼树的基本概念,并通过C语言实现了哈夫曼树.本章是哈夫曼树的C++实现. 目录 1. 哈夫曼树的介绍 2. 哈夫曼树的图文解析 3. 哈夫曼树的基本操作 4. 哈夫曼树的完整源码 转载 ...
- AngularJS的学习--ng-show/ng-hide/ng-if和ng-switch
在Angular的原生指令中有这几个指令用来控制元素的展示与否,ng-show/ng-hide/ng-if和ng-switch. 在angular性能优化中,我们也常常会用到它. 我们看下他们的区别. ...
- struts深入原理之RequestProcessor与xml
和配置文件相对应的代码(struts1) public void process(HttpServletRequest request, HttpServletResponse response) ...
- PhotoShop简介
Adobe Photoshop,简称“PS”,是由Adobe Systems开发和发行的图像处理软件.Photoshop主要处理以像素所构成的数字图像.使用其众多的编修与绘图工具,可以有效地进行图片编 ...
