2018-01-18使用maven搭建多模块的springmvc+mybatis

1、maven自动管理java包

2、maven构建多个模块,结构清晰,管理方便。

3、使用mybatis持久化框架,手动编写更多的sql语句

一、测试环境原理

mysql5.5 + myeclipse2014 +navicate + jdk1.7 + tomcat 7

1、模块聚合

随着项目越来越大,功能越来越多,更多的时候需要模块管理,例如本实例分为model persist service web 

maven的聚合功能将多个模块统一管理,一次构建。

聚合pom仅仅是帮助模块聚合的工具,本身并没有实质内容




2018-01-18使用maven搭建多模块的springmvc+mybatis_第1张图片

module 就是各模块名称

通过构建一个打包方式为pom的maven项目,通过声明多个module,来实现聚合。

packaging:pom 否则无法聚合构建



2、pom继承

通过在父pom中声明来实现子pom中的复用和消除。

打包方式packging:pom,因此可以和聚合使用同一个配置文件。


2018-01-18使用maven搭建多模块的springmvc+mybatis_第2张图片
2018-01-18使用maven搭建多模块的springmvc+mybatis_第3张图片

dependencyManagement 、pluginManagement,让子pom继承父pom的同时,又保证了子pom的灵活性,并没有实际引入子pom中,但约束了子pom的依赖。


二、项目目录结构


2018-01-18使用maven搭建多模块的springmvc+mybatis_第4张图片

各项目功能介绍:

ssm-root是maven-project是父级maven,管理整个项目

ssm-model是数据模型模块

ssm-persist是持久化模块,使用的mybatis,则有映射的接口和对应的xml配置文件

ssm-util是工具模块

ssm-service是业务服务模块,是对数据操作接口定义和实现的模块

ssm-web是核心业务处理层,是springmvc的controller实现处

三、项目搭建

首先eclipse得安装maven,教程https://jingyan.baidu.com/article/295430f136e8e00c7e0050b9.html

1、创建父级maven-project

新建--->maven-project-->simple-->输入名称,创建完毕。


2018-01-18使用maven搭建多模块的springmvc+mybatis_第5张图片
选择maven project


2018-01-18使用maven搭建多模块的springmvc+mybatis_第6张图片
默认选项


2018-01-18使用maven搭建多模块的springmvc+mybatis_第7张图片
fileter中输入simple,选择site,其他两个j2ee和seam本人没有测试。


2018-01-18使用maven搭建多模块的springmvc+mybatis_第8张图片
输入相关的参数

注意:

groupId定义当前模块隶属的实际Maven项目, 表示方式与Java包类似   

: groupId不应直接对应项目隶属的公司/组织(一个公司/组织下可能会有很多的项目).

artifactId定义实际项目中的一个Maven模块     

: 推荐使用项目名作为artifactId前缀, 如:commons-lang3commons作为前缀(因为Maven打包默认以artifactId作为前缀)

version定义当前项目所处版本(如1.0-SNAPSHOT4.2.7.RELEASE1.2.1514.0.1-h-3 等)       

:Maven版本号定义约定: <主版本>.<次版本>.<增量版本>-<里程碑版本>

packaging定义Maven项目打包方式, 通常打包方式与所生成构件扩展名对应      

:有jar(默认)、war、pom、maven-plugin等.

classifier用来帮助定义构建输出的一些附属构件(如javadoc、sources)     

: 不能直接定义项目的classifier(因为附属构件不是由项目默认生成, 须有附加插件的帮助)

2、创建子maven-model

注意:父maven管理所有的子maven项目

在父maven中选择新建--->选择maven-model-->选择quickstart--->输入相关参数


2018-01-18使用maven搭建多模块的springmvc+mybatis_第9张图片
新建model


2018-01-18使用maven搭建多模块的springmvc+mybatis_第10张图片
filter中输入start,选择第一个maven release quickstart


2018-01-18使用maven搭建多模块的springmvc+mybatis_第11张图片
选择版本号,完成

注意:此时,在父级maven中已经含有了子maven-model项目


2018-01-18使用maven搭建多模块的springmvc+mybatis_第12张图片

重复上述步骤,依次创建persist、service、util,

对于web项目,在filter时,输入web,选择相应maven管理下的web app 


2018-01-18使用maven搭建多模块的springmvc+mybatis_第13张图片

注意:创建完web项目后,我的该web项目会自动添加maven webapp 然而在pom.xml中使用的项目名称是web,于是对该项目重命名,使用reactor--rename,当修改了name后,发现子项目web消失了,于是从新创建model,选择web,eclipse会自动将之前创建的web项目载入。

第一次创建后,没有修改,在maven clean时候,报错,说在找不到web的pom.xml。具体原因,未确定。

关于依赖。

参考文章:http://blog.csdn.net/zjf280441589/article/details/53044308

你可能感兴趣的:(2018-01-18使用maven搭建多模块的springmvc+mybatis)