ssm+maven(模組化)架構搭建(eclipse)(上),ssmmaven
環境 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,項目會自動繼承父模組的配置;
彙總繼承:彙總主要是為了方便構建項目,繼承主要是為了消除重複配置。
最後,部落格寫的有點亂,第一次這麼系統的記錄自己的學習,看到的親們見諒。