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 ...
随机推荐
- ASP.NET MVC 4 Optimization的JS/CSS文件动态合并及压缩
JS/CSS文件的打包合并(Bundling)及压缩(Minification)是指将多个JS或CSS文件打包合并成一个文件,并在网站发布之后进行压缩,从而减少HTTP请求次数,提高网络加载速度和页面 ...
- codeforces B. Pasha and String(贪心)
题意:给定一个长度为len的字符序列,然后是n个整数,对于每一个整数ai, 将字符序列区间为[ai,len-ai+1]进行反转.求出经过n次反转之后的序列! /* 思路1:将区间为偶数次的直接去掉!对 ...
- ngRoute AngularJs自带的路由
ngRoute $routeProvider 配置路由的时候使用. 方法: when(path,route); 在$route服务里添加一个新的路由. path:该路由的路径. route:路由映射信 ...
- Lua 学习笔记(三)表达式
Lua中的表达式中可以包含数字常量.字面字符串.变量.一元和二元操作符及函数调用.表达式用于表示值.当然表达式中还可以包含函数定义以及table构造式.Lua中的操作符有:算术操作符.逻辑操作符.关系 ...
- [译]对 AngularJS 模板的A/B测试
编者按:本文翻译自 Andrei Bondarev 在 Medium 上发布的"A/B Testing your AngularJS Templates ",Andrei 是一名工 ...
- 云计算之路-阿里云上:结合IIS日志分析“黑色30秒”问题
在昨天针对“黑色30秒”问题的分析中,我们猜测Requests Queued上升是由于正在处理的请求出不去(到达不了客户端).今天我们结合IIS日志验证这个猜测. IIS日志中有一个重要的指标——ti ...
- prototype.js源码
prototype 1.3.1 版本和之前的 1.2.0 版本有了不少改进,并增加了新的功能: 1. 增加了事件注册管理2. 增加了空间定位的常用函数3. 改善了 xmlhttp 的封装4. 移除了 ...
- Windows 下搭建 Ruby 开发环境
1.从http://rubyinstaller.org/downloads/下载“rubyinstaller-2.1.5-x64.exe”. 2. 双击下载的程序进行安装,勾选如下图的选项.默认安装目 ...
- js每天进步一点点3
JS之样式的改变
- 在这个变化的年代,IT人的方向在哪里?看两个故事
王超是我的朋友,来京四年整.最初在一家民企做LINUX运维工程师,月薪5000.工作很认真,埋头苦干型,每天工作时间很长,让加班从来无怨言.即使是周末休假,只要有工作任务也是随叫随到.然而当他提涨薪时 ...
