环境 tomcat8 +jdk: 1.8+myeclipse
参考博客:http://blog.csdn.net/yu870646595/article/details/52150027
1.maven 模块化搭建
搭建后的目录框架:
备注:ssm-parent:父模块 ssm-module1:子模块
ssm-parent 功能:聚合各个子模块,存放jar包依赖,实现各个子模块对依赖的共享;
pom文件配置:
<projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<!--父模块坐标 gav-->
<groupId>gxrong.study.ssm</groupId>
<artifactId>ssm-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
<!--打包方式-->
<packaging>pom</packaging>
<name>ssm-parent</name>
<url>http://maven.apache.org</url>
<!--属性标签 可自定义 我在这里主要对各个依赖的version统一管理-->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<!--Framework dependency versions -->
<spring.version>4.2.5.RELEASE</spring.version>
<mybatis.version>3.3.1</mybatis.version>
<jackson-version>2.6.4</jackson-version>
<commons-io.version>2.4</commons-io.version>
<commons.fileupload.version>1.3.1</commons.fileupload.version>
<slf4j.version>1.7.7</slf4j.version>
<log4j.version>1.2.17</log4j.version>
<junit.version>4.12</junit.version>
</properties>
<!--添加依赖 各个子模块都可以继承,如果有些jar部分子模块不需要继承,<dependencies> 外层添加<dependencyManagement>,这样做子模块不会真正的添加,需要的子模块在pom里配置一下ga即可 -->
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
<!--spring-->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
<!-- 排除spring依赖的comm-logging 换用slf4j作为抽象访问层-->
<exclusions>
<exclusion>
<artifactId>commons-logging</artifactId>
<groupId>commons-logging</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${spring.version}</version>
</dependency>
</dependencies>
插件
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
</plugin>
<!--配置子模块 名称需跟子模块名称相同,多个子模块打包的时候可直接在父模块上进行 -->
<modules>
<module>ssm-module1</module>
</modules>
</project>
子模块目录及POM:
目录:
maven规范化结构:src/main/java src/mian/resources src/test/java src/test/resources
文件说明:
src/main/java:java代码 dao service controller pojo 等均可以放到这里,当然,dao service可以单独建立一个子模块;这里就不说了,属于项目架构的问题;
src/mian/resources:存放项目的配置文件,比如spring spring-mybatis log4j等;
POM配置:
<artifactId>ssm-module1</artifactId>
<name>ssm-module1</name>
<packaging>war</packaging>
<parent>
<groupId>gxrong.study.ssm</groupId>
<artifactId>ssm-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
其它的不放了,都是些jar依赖,主要说明的是 parent 引入;子模块pom里需放置父模块的坐标,这样才能继承父pom文件里的依赖,子模块的坐标可省略groupId version,项目会自动继承父模块的配置;
聚合继承:聚合主要是为了方便构建项目,继承主要是为了消除重复配置。
最后,博客写的有点乱,第一次这么系统的记录自己的学习,看到的亲们见谅。