第一天:项目介绍以及项目的环境搭建

1.   浪迹天涯商城简介

浪迹天涯网上商城是一个综合性的B2C平台,类似京东商城、天猫商城。会员可以在商城浏览商品、下订单,以及参加各种活动。管理员、运营可以在平台后台管理系统中管理商品、订单、会员等。客服可以在后台管理系统中处理用户的询问以及投诉。

2.   功能架构

2.1. 系统功能图

2.2 功能描述

后台管理系统:管理商品、订单、类目、商品规格属性、用户管理以及内容发布等功能。

前台系统:用户可以在前台系统中进行注册、登录、浏览商品、首页、下单等操作。

会员系统:用户可以在该系统中查询已下的订单、收藏的商品、我的优惠券、团购等信息。

订单系统:提供下单、查询订单、修改订单状态、定时处理订单。

搜索系统:提供商品的搜索功能。

单点登录系统:为多个系统之间提供用户登录凭证以及查询登录用户的信息。

3.  技术架构

3.1 传统架构

思考:有什么问题?

1、 模块之间耦合度太高,其中一个升级其他都得升级。

2、 开发困难,各个团队开发最后都要整合一起。

3、 系统的扩展性差。

4、不能灵活的进行分布式部署。

3.2 分布式系统架构

分布式架构:把系统按照模块拆分成多个子系统。

优点:

1、把模块拆分,使用接口通信,降低模块之间的耦合度。

2、把项目拆分成若干个子项目,不同的团队负责不同的子项目。

3、增加功能时只需要再增加一个子项目,调用其他系统的接口就可以。

4、可以灵活的进行分布式部署。

缺点:系统之间交互需要使用远程通信,接口开发增加工作量。

4.  开发工具和环境

Eclipse, Maven 3.3.3, Tomcat 7.0.53(Maven Tomcat Plugin)

JDK 1.7, Mysql 5.6, Nginx 1.8.0, Redis 3.0.0, Win7 操作系统

5.  后台管理系统工程结构

5.1.  maven管理的好处

1、项目构建。Maven定义了软件开发的整套流程体系,并进行了封装,开发人员只需要指定项目的构建流程,无需针对每个流程编写自己的构建脚本。

2、依赖管理。除了项目构建,Maven最核心的功能是软件包的依赖管理,能够自动分析项目所需要的依赖软件包,并到Maven中心仓库去下载。

A)管理依赖的jar包

B)管理工程之间的依赖关系。

5.2.  Maven本地仓库

在当前系统用户的文件夹下。例如当前用户是Administrator那么本地仓库就是在C:\Users\Administrator\.m2目录下。

5.3.  依赖管理

传统工程结构:

Maven管理的工程结构:

不使用maven:工程部署时需要手动复制jar包。完成工程构建。非常繁琐。

使用maven进行工程构建:使用maven可以实现一步构建。

5.4.  后台管理系统的工程结构

6.  项目模块

6.1 pfnie-parent

创建一个pfnie-parent的maven项目,packaging是pom, 并install到本地maven的仓库中。项目地址:pfnie-parent .

6.2 pfnie-common

创建一个pfnie-common的maven项目,packaging是jar, 并install到本地maven的仓库中. 项目地址:pfnie-common .

6.3 pfnie-manager

创建一个pfnie-manager的maven项目, packaging是pom, 并加入对pfnie-common这个项目的依赖。项目地址:pfnie-manager .

6.3.1 pfnie-manager-entity

创建一个pfnie-manager-entity的maven module, 指定它的parent project为pfnie-manager, 指定这个pfnie-manager-entity的packing为jar.并且这个pfnie-manager-entity的pom.xml目前不需要其他的依赖,暂时不做修改。

6.3.2 pfnie-manager-mapper

创建一个pfnie-manager-mapper的maven module, 指定它的parent project为pfnie-manager, 指定这个pfnie-manager-mapper的packing为jar.并且在pfnie-manager-mapper的pom.xml中添加pfnie-manager-entity模块依赖。

6.3.3 pfnie-manager-service

创建一个pfnie-manager-service的maven module, 指定它的parent project为pfnie-manager, 指定这个pfnie-manager-service的packing为jar.并且在pfnie-manager-service的pom.xml中添加pfnie-manager-mapper模块依赖。

6.3.4 pfnie-manager-web

创建一个pfnie-manager-web的maven module, 指定它的parent project为pfnie-manager, 指定这个pfnie-manager-web的packing为war.并且在pfnie-manager-web的pom.xml中添加pfnie-manager-service模块依赖, 并且修改web.xml文件。

6.4 查看pfnie-manager项目的变化

在pfnie-manager的pom.xml文件中,我们可以发现,自动的多了如下的配置:

项目截图留念:

7.  测试Maven工程

7.1 运行的工程

要运行工程,需要运行聚合工程也就是pfnie-manager。在运行之前,需要在pfnie-manager的pom.xml文件中加入:

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

7.2 启动工程

使用maven命令:

clean tomcat7:run

tomcat7指定使用tomcat7的插件。

注意:

1、需要把pfnie-parent工程安装到本地仓库。

2、需要把pfnie-common工程安装到本地仓库。

 

参考文献:

1. 史上最全的maven pom.xml文件教程详解

posted @ 2017-07-15 15:46  pfnie  阅读(145)  评论(0)    收藏  举报