zoukankan      html  css  js  c++  java
  • ssm+maven(模块化)框架搭建(eclipse)(上)

    环境 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,项目会自动继承父模块的配置;

    聚合继承:聚合主要是为了方便构建项目,继承主要是为了消除重复配置。

    最后,博客写的有点乱,第一次这么系统的记录自己的学习,看到的亲们见谅。

  • 相关阅读:
    python自动化测试-D9-学习笔记之二(线程锁)
    python习题:封装好的测试报告(report.py)
    python自动化测试-D9-学习笔记之二(守护线程)
    python自动化测试-D9-学习笔记之二(多线程)
    python自动化测试-D9-学习笔记之一(线程池)
    python自动化测试-D9-学习笔记之一(unittest模块)
    python习题:写一个备份数据库的脚本
    python习题:【多线程】有100个数据,启动5个线程,每个线程分20个数据,怎么把这20个数据分别传给每个线程。
    自然语言处理NLTK之入门
    python画一颗拳头大的💗
  • 原文地址:https://www.cnblogs.com/chongchong409/p/6429139.html
Copyright © 2011-2022 走看看