• 搭建聚合工程教案


    淘淘商城第一天

    课程安排

    项目架构,使用maven架构一个分布式项目,SSM整合,搭建一个商品后台

    淘淘商城后台架构

    2.1 项目架构

    项目管理:Maven
    taotao-parent:    pom工程,只记录jar包的定位
    taotao-common:  jar包工程,  是整个电商项目的一个工具类,   
    taotao-manager   聚合工程 
     Taotao-manager-pojo     
     Taotao-manager-mapper    DAO 持久层
    Taotao-manager-service     业务逻辑
     Taotao-manager-web       springmvc里的controller类

    2.2 环境搭建

    2.2.1 Eclipse环境搭建

    启动的时候会报错,

    电脑中,安装过oracle,Oracle默认的jdk是1.3版本
    %JAVA_HOME%in;F:oracleproduct10.2.0db_1in;%SystemRoot%system32;%SystemRoot%;%SystemRoot%System32Wbem;%SYSTEMROOT%System32WindowsPowerShellv1.0;E:mysqlin;E:softwaremysqlin;E:softwareTortoisin;E:softwaresvnServerin;E:mavenin;

    2.2.1.1 工作空间

    2.2.1.2 创建本地仓库

    2.2.1.3 启动Eclipse

    减压Eclipse压缩包,选中上面配置好的工作空间

    创建taotao-parent

    3.1 修改pom文件

    <project xmlns="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>
        <groupId>com.taotao.parent</groupId>
        <artifactId>taotao-parent</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <packaging>pom</packaging>
    
        <!-- 集中定义依赖版本号 -->
        <properties>
            <junit.version>4.10</junit.version>
            <spring.version>4.1.3.RELEASE</spring.version>
            <mybatis.version>3.2.8</mybatis.version>
            <mybatis.spring.version>1.2.2</mybatis.spring.version>
            <mybatis.paginator.version>1.2.15</mybatis.paginator.version>
            <mysql.version>5.1.32</mysql.version>
            <slf4j.version>1.6.4</slf4j.version>
            <jackson.version>2.4.2</jackson.version>
            <druid.version>1.0.9</druid.version>
            <httpclient.version>4.3.5</httpclient.version>
            <jstl.version>1.2</jstl.version>
            <servlet-api.version>2.5</servlet-api.version>
            <jsp-api.version>2.0</jsp-api.version>
            <joda-time.version>2.5</joda-time.version>
            <commons-lang3.version>3.3.2</commons-lang3.version>
            <commons-io.version>1.3.2</commons-io.version>
        </properties>
    
        <dependencyManagement>
            <dependencies>
                <!-- 单元测试 -->
                <dependency>
                    <groupId>junit</groupId>
                    <artifactId>junit</artifactId>
                    <version>${junit.version}</version>
                    <scope>test</scope>
                </dependency>
    
                <!-- Spring -->
                <dependency>
                    <groupId>org.springframework</groupId>
                    <artifactId>spring-context</artifactId>
                    <version>${spring.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.springframework</groupId>
                    <artifactId>spring-beans</artifactId>
                    <version>${spring.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.springframework</groupId>
                    <artifactId>spring-webmvc</artifactId>
                    <version>${spring.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.springframework</groupId>
                    <artifactId>spring-jdbc</artifactId>
                    <version>${spring.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.springframework</groupId>
                    <artifactId>spring-aspects</artifactId>
                    <version>${spring.version}</version>
                </dependency>
    
                <!-- Mybatis -->
                <dependency>
                    <groupId>org.mybatis</groupId>
                    <artifactId>mybatis</artifactId>
                    <version>${mybatis.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.mybatis</groupId>
                    <artifactId>mybatis-spring</artifactId>
                    <version>${mybatis.spring.version}</version>
                </dependency>
                <!-- 分页助手 -->
                <dependency>
                    <groupId>com.github.pagehelper</groupId>
                    <artifactId>pagehelper</artifactId>
                    <version>3.7.5</version>
                </dependency>
                <dependency>
                    <groupId>com.github.jsqlparser</groupId>
                    <artifactId>jsqlparser</artifactId>
                    <version>0.9.1</version>
                </dependency>
                <!-- 通用Mapper -->
                <dependency>
                    <groupId>com.github.abel533</groupId>
                    <artifactId>mapper</artifactId>
                    <version>2.3.4</version>
                </dependency>
    
                <!-- MySql -->
                <dependency>
                    <groupId>mysql</groupId>
                    <artifactId>mysql-connector-java</artifactId>
                    <version>${mysql.version}</version>
                </dependency>
    
                <dependency>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-log4j12</artifactId>
                    <version>${slf4j.version}</version>
                </dependency>
    
                <!-- Jackson Json处理工具包 -->
                <dependency>
                    <groupId>com.fasterxml.jackson.core</groupId>
                    <artifactId>jackson-databind</artifactId>
                    <version>${jackson.version}</version>
                </dependency>
    
                <!-- 连接池 -->
                <dependency>
                    <groupId>com.jolbox</groupId>
                    <artifactId>bonecp-spring</artifactId>
                    <version>0.8.0.RELEASE</version>
                </dependency>
    
                <!-- httpclient -->
                <dependency>
                    <groupId>org.apache.httpcomponents</groupId>
                    <artifactId>httpclient</artifactId>
                    <version>${httpclient.version}</version>
                </dependency>
    
                <!-- JSP相关 -->
                <dependency>
                    <groupId>jstl</groupId>
                    <artifactId>jstl</artifactId>
                    <version>${jstl.version}</version>
                </dependency>
                <dependency>
                    <groupId>javax.servlet</groupId>
                    <artifactId>servlet-api</artifactId>
                    <version>${servlet-api.version}</version>
                    <scope>provided</scope>
                </dependency>
                <dependency>
                    <groupId>javax.servlet</groupId>
                    <artifactId>jsp-api</artifactId>
                    <version>${jsp-api.version}</version>
                    <scope>provided</scope>
                </dependency>
    
                <!-- 时间操作组件 -->
                <dependency>
                    <groupId>joda-time</groupId>
                    <artifactId>joda-time</artifactId>
                    <version>${joda-time.version}</version>
                </dependency>
    
                <!-- Apache工具组件 -->
                <dependency>
                    <groupId>org.apache.commons</groupId>
                    <artifactId>commons-lang3</artifactId>
                    <version>${commons-lang3.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.commons</groupId>
                    <artifactId>commons-io</artifactId>
                    <version>${commons-io.version}</version>
                </dependency>
                <dependency>
                    <groupId>commons-fileupload</groupId>
                    <artifactId>commons-fileupload</artifactId>
                    <version>1.2.2</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.clerezza.ext</groupId>
                    <artifactId>org.json.simple</artifactId>
                    <version>0.4</version>
                </dependency>
    
            </dependencies>
        </dependencyManagement>
    
        <build>
            <finalName>${project.artifactId}</finalName>
            <plugins>
                <!-- 资源文件拷贝插件 -->
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-resources-plugin</artifactId>
                    <version>2.7</version>
                    <configuration>
                        <encoding>UTF-8</encoding>
                    </configuration>
                </plugin>
                <!-- java编译插件 -->
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.2</version>
                    <configuration>
                        <source>1.8</source>
                        <target>1.8</target>
                        <encoding>UTF-8</encoding>
                    </configuration>
                </plugin>
            </plugins>
            <pluginManagement>
                <plugins>
                    <!-- 配置Tomcat插件 -->
                    <plugin>
                        <groupId>org.apache.tomcat.maven</groupId>
                        <artifactId>tomcat7-maven-plugin</artifactId>
                        <version>2.2</version>
                    </plugin>
                </plugins>
            </pluginManagement>
        </build>
    </project>

    Pom工程,只需要定义版本号和jar包工程.

    创建taotao-common工程

    搭建成为一个jar工程.就相当于把工程打成jar包的形式.

    4.1 修改pom文件

    依赖,依赖传递,继承.

    因为我们依赖了taotao-parent工程,所以我们不需要写版本号了

    <project xmlns="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>
        <groupId>com.taotao.common</groupId>
        <artifactId>taotao-common</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <parent>
            <groupId>com.taotao.parent</groupId>
            <artifactId>taotao-parent</artifactId>
            <version>0.0.1-SNAPSHOT</version>
        </parent>
        <dependencies>
            <!--jedis -->
            <dependency>
                <groupId>redis.clients</groupId>
                <artifactId>jedis</artifactId>
                <version>2.6.0</version>
            </dependency>
            <dependency>
                <groupId>org.apache.commons</groupId>
                <artifactId>commons-pool2</artifactId>
                <version>2.4.2</version>
            </dependency>
            <!-- 单元测试 -->
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <scope>test</scope>
            </dependency>
    
            <!--日志处理 -->
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-log4j12</artifactId>
            </dependency>
    
            <!-- Jackson Json处理工具包 -->
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-databind</artifactId>
            </dependency>
            <dependency>
                <groupId>org.apache.clerezza.ext</groupId>
                <artifactId>org.json.simple</artifactId>
                <version>0.4</version>
            </dependency>
    
            <!-- httpclient -->
            <dependency>
                <groupId>org.apache.httpcomponents</groupId>
                <artifactId>httpclient</artifactId>
            </dependency>
    
    
            <!-- 时间操作组件 -->
            <dependency>
                <groupId>joda-time</groupId>
                <artifactId>joda-time</artifactId>
            </dependency>
    
            <!-- Apache工具组件 -->
            <dependency>
                <groupId>org.apache.commons</groupId>
                <artifactId>commons-lang3</artifactId>
            </dependency>
            <dependency>
                <groupId>org.apache.commons</groupId>
                <artifactId>commons-io</artifactId>
            </dependency>
            <dependency>
                <groupId>commons-fileupload</groupId>
                <artifactId>commons-fileupload</artifactId>
                <version>1.2.2</version>
            </dependency>
        </dependencies>
    </project>  

    创建taotao-manager

    Pom工程

    5.1 修改pom文件

    <project xmlns="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>
      <parent>
        <groupId>com.taotao</groupId>
        <artifactId>taotao-parent</artifactId>
        <version>0.0.1-SNAPSHOT</version>
      </parent>
      <groupId>com.taotao</groupId>
      <artifactId>taotao-manager</artifactId>
      <version>0.0.1-SNAPSHOT</version>
      <packaging>pom</packaging>
        <dependencies>
            <dependency>
                  <groupId>com.taotao</groupId>
                  <artifactId>taotao-common</artifactId>
                  <version>0.0.1-SNAPSHOT</version>
            </dependency>
        
        </dependencies>
    </project>

    5.2 创建taotao-pojo工程

     

    5.3 创建taotao-manager-mapper

    5.4 修改pom文件

    <project xmlns="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>
        <parent>
            <groupId>com.taotao.manage</groupId>
            <artifactId>taotao-manage</artifactId>
            <version>0.0.1-SNAPSHOT</version>
        </parent>
        <artifactId>taotao-manage-mapper</artifactId>
        <dependencies>
            <dependency>
                <groupId>com.taotao.manage</groupId>
                <artifactId>taotao-manage-pojo</artifactId>
                <version>0.0.1-SNAPSHOT</version>
            </dependency>
            <!-- Mybatis -->
            <dependency>
                <groupId>org.mybatis</groupId>
                <artifactId>mybatis</artifactId>
            </dependency>
            <dependency>
                <groupId>org.mybatis</groupId>
                <artifactId>mybatis-spring</artifactId>
            </dependency>
            <!-- 分页助手 -->
            <dependency>
                <groupId>com.github.pagehelper</groupId>
                <artifactId>pagehelper</artifactId>
                <version>3.7.5</version>
            </dependency>
            <dependency>
                <groupId>com.github.jsqlparser</groupId>
                <artifactId>jsqlparser</artifactId>
                <version>0.9.1</version>
            </dependency>
            <!-- 通用Mapper -->
            <dependency>
                <groupId>com.github.abel533</groupId>
                <artifactId>mapper</artifactId>
                <version>2.3.4</version>
            </dependency>
    
            <!-- MySql -->
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
            </dependency>
            <!-- 连接池 -->
            <dependency>
                <groupId>com.jolbox</groupId>
                <artifactId>bonecp-spring</artifactId>
                <version>0.8.0.RELEASE</version>
            </dependency>
        </dependencies>
    </project>

    5.5创建一个taotao-manager-service

     

    5.6 修改pom文件

    <project xmlns="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>
        <parent>
            <groupId>com.taotao.manage</groupId>
            <artifactId>taotao-manage</artifactId>
            <version>0.0.1-SNAPSHOT</version>
        </parent>
        <artifactId>taotao-manage-service</artifactId>
        <dependencies>
            <dependency>
                <groupId>com.taotao.manage</groupId>
                <artifactId>taotao-manage-mapper</artifactId>
                <version>0.0.1-SNAPSHOT</version>
            </dependency>
    
        <!-- spring相关依赖 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-aspects</artifactId>
        </dependency>
            
        </dependencies>
    </project>

    5.7 创建taotao-manager-web

    War包工程

    5.8 修改pom.xml文件

    <project xmlns="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>
        <parent>
            <groupId>com.taotao.manage</groupId>
            <artifactId>taotao-manage</artifactId>
            <version>0.0.1-SNAPSHOT</version>
        </parent>
        <artifactId>taotao-manage-web</artifactId>
        <packaging>war</packaging>
        
        <dependencies>
            <dependency>
                <groupId>com.taotao.manage</groupId>
                <artifactId>taotao-manage-service</artifactId>
                <version>0.0.1-SNAPSHOT</version>
            </dependency>
            <!--jsp -->
            <dependency>
                <groupId>jstl</groupId>
                <artifactId>jstl</artifactId>
            </dependency>
            <dependency>
                <groupId>javax.servlet</groupId>
                <artifactId>servlet-api</artifactId>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>javax.servlet</groupId>
                <artifactId>jsp-api</artifactId>
                <scope>provided</scope>
            </dependency>
        </dependencies>
    </project>

    5.9 创建web.xml

    5.10 修改web.xml文件

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
        id="taotao" version="2.5">
        <display-name>taotao-manage</display-name>
        <welcome-file-list>
            <welcome-file>index.html</welcome-file>
            <welcome-file>index.htm</welcome-file>
            <welcome-file>index.jsp</welcome-file>
            <welcome-file>default.html</welcome-file>
            <welcome-file>default.htm</welcome-file>
            <welcome-file>default.jsp</welcome-file>
        </welcome-file-list>
    </web-app>

    5.11 启动taotao-manager项目

     5.11.1 创建index.jsp页面

    5.11.2 配置一下taotao-manage下的pom文件

    添加tomcat插件

        <build>
            <!-- 配置插件 -->
            <plugins>
                <plugin>
                    <groupId>org.apache.tomcat.maven</groupId>
                    <artifactId>tomcat7-maven-plugin</artifactId>
                    <configuration>
                        <port>8080</port>
                        <path>/</path>
                    </configuration>
                </plugin>
            </plugins>
        </build>

    5.11.3 启动命令

    5.12 错误总结

    在你的资源库中没有找到taotao-parent这个pom文件

    解决方式

    需要安装taotao-parent项目到资源库中

    错误

     

    解决错误,taotao-common这个工程安装到本地仓库.

    5.13 截图留念

    SVN上传

    6.1 上传taotao-manager项目

    6.2 使用svn下载项目

    svn上下载下来的项目,转换成为maven项目

    聚合工程的关系图

     

  • 相关阅读:
    angular 组件间数据共享
    Linux 常用命令
    angular 子路由跳转出现Navigation triggered outside Angular zone, did you forget to call ‘ngZone.run() 的问题修复
    angular :ngIf 的else用法
    利用 filter 来去重
    webpack打包时删除console.log,和debugger
    git忽略而不提交文件的3种情形
    jenkins 构建日程表配置
    vue之多页面的开发
    vue-cli3使用jq
  • 原文地址:https://www.cnblogs.com/JBLi/p/10566911.html
Copyright © 2020-2023  润新知