第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

目录

1. 聊聊电商行业

1.1. 电商行业发展

近年来,中国的电子商务快速发展,交易额连创新高,电子商务在各领域的应用不断拓展和深化、相关服务业蓬勃发展、支撑体系不断健全完善、创新的动力和能力 不断增强。电子商务正在与实体经济深度融合,进入规模性发展阶段,对经济社会生活的影响不断增大,正成为我国经济发展的新引擎。

中国电子商务研究中心数据显示,截止到2012年底,中国电子商务市场交易规模达7.85万亿人民币,同比增长30.83%。其中,B2B电子商务交易额 达6.25万亿,同比增长27%。而2011年全年,中国电子商务市场交易额达6万亿人民币,同比增长33%,占GDP比重上升到13%;2012年,电 子商务占GDP的比重已经高达15%。预计2013年我国电子商务规模将突破十万亿大关。

中国产业信息网数据显示,2019年双十一全网成交额为4101亿元,超过2018年双十一的交易额3143亿元,同比增长30.1%,同比增速也好于2018年时的24%。具体看各平台,2019年天猫双十一全天成交额2684元,同比增长25.71%,天猫双十一物流订单量达到创纪录的12.92亿;京东2019年双十一全球好物节(11月1日到11月11日)累计下单金额为2044亿元,同比增长27.90%;苏宁双十一当天全渠道订单量增长76%,苏宁金融移动支付笔数同比增长139%;拼多多2019年并未公布总的交易数额。

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用
图1.2015-2019年全网销售额及增速(万亿元)

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用
图2.2013-2019年天猫双十一成交额及同比增速

根据菜鸟网络的数据,由此产生物流订单12.92亿单,同比上涨24%,增速符合预期。京东宣布全球好物节(从11月1日零时起至11月11日23时59分59秒)期间累计下单2,044亿元,同比大幅超越2018年。根据国家邮政局的监测数据,双十一全天各邮政、快递企业共处理5.35亿快件,是二季度以来日常处理量的3倍,同比增长28.6%。公司方面,中通宣布当天快递订单量超过2亿单(2018年同期宣布突破1.5亿件),圆通宣布比2018年双十一提早4小时08分突破1亿单订单,申通宣布15:25分时件量超过2018年双十一全天,德邦宣布到18:42大件快递产品收入超过1亿元(以上公司宣布数据均未经审核)。从物流效率来看,2019年双十一发出一亿个包裹用时8小时,比2018年提前59分钟,比2013年已经缩短40个小时。

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

图3. 双十一当天菜鸟网络的物流订单数

1.2. 双十一

2016年以后,移动互联网流量红利接近尾声,电商获客进入瓶颈期,行业增速放缓。双十一购物节也走出了“引流聚客”的单一角色,占年度GMV比重越来越高。FY2016/FY2017/FY2018/FY2019天猫双十一GMV占天猫全年GMV比重分别为7.5%/7.7%/7.9%/8.2%,占天猫+淘宝总体全年GMV比重分别为2.9%/3.2%/3.5%/3.7%,逐年上升。作为对比,2018年美国“黑五”当天线上销售额仅62.2亿美元,同比增速为23.6%。以双十一当下规模(约为“黑五”线上的6-7倍)判断,增速放缓在所难免。

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

图4. 2016-2019年天猫重点交易额时点

1.3. 电商行业技术特点

  • 技术新

  • 技术范围广

  • 分布式

  • 高并发、集群、负载均衡、高可用

  • 海量数据

  • 业务复杂

  • 系统安全

1.4 电商行业的模式

B2B:企业到企业,商家到商家。代表:阿里巴巴

B2C:商家到客户。代表:京东,淘宝商城(B2B2C)

C2C:客户到客户。淘宝集市

O2O:线上到线下

2. 淘淘商城

2.1. 淘淘商城简介

淘淘网上商城是一个综合性的B2C平台,类似京东商城、天猫商城。会员可以在商城浏览商品、下订单,以及参加各种活动。

管理员、运营可以在平台后台管理系统中管理商品、订单、会员等。

客服可以在后台管理系统中处理用户的询问以及投诉。

2.2. 功能架构

2.2.1. 系统功能图

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

2.2.2. 功能描述

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

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

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

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

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

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

2.3. 技术架构

2.3.1. 传统架构

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

思考:有什么问题?

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

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

3、 系统的扩展性差

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

2.3.2. 分布式系统架构

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

分布式架构:

把系统按照模块拆分成多个子系统。

优点:

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

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

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

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

缺点:

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

2.3.3. 技术选型(主要技术)

  • Spring、SpringMVC、Mybatis

  • JSP、JSTL、jQuery、jQuery plugin、EasyUI、KindEditor(富文本编辑器)、CSS+DIV

  • Redis(缓存服务器)

  • Solr(搜索)

  • httpclient(调用系统服务)

  • Mysql

  • Nginx(web服务器)

2.4. 开发工具和环境

  • Eclipse 4.5.0(Mars),自带maven插件,需要手工安装svn插件。

  • 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 操作系统

  • SVN(版本管理)

2.5. 人员配置

产品经理:3人,确定需求以及给出产品原型图。

项目经理:1人,项目管理。

前端团队:5人,根据产品经理给出的原型制作静态页面。

后端团队:20人,实现产品功能。

测试团队:5人,测试所有的功能。

运维团队:3人,项目的发布以及维护。

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

3.1. maven管理的好处

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

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

A)管理依赖的jar包

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

3、工程聚合、集成、依赖

3.2 Maven 的工程类型

  1. pom包工程:父工程,在父工程中定义依赖的jar包的版本信息,以及Maven 插件的版本
  2. war包工程:web工程,可以直接放到tomcat下运行的工程
  3. jar包工程:是pom工程的子工程,由pom工程来管理

3.2. 依赖管理

传统工程结构:

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

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

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

后台管理系统工程结构:

taotao-parent – 管理依赖jar包的版本,全局,公司级别

|–taotao-common — 通用组件、工具类

|–taotao-manager – 后台系统

​ |–com.taotao.manage.web

​ |–com.taotao.manage.service

​ |–com.taotao.manage.mapper

​ |–com.taotao.manage.pojo

3.3. 管理依赖jar包的版本,全局taotao-parent

3.3.1. 创建maven工程

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用
第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

3.3.2. 修改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</groupId>
	<artifactId>taotao-parent</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>pom</packaging>
	<!-- 集中定义依赖版本号 -->
	<properties>
		<junit.version>4.12</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>
		<commons-net.version>3.3</commons-net.version>
		<pagehelper.version>3.4.2-fix</pagehelper.version>
		<jsqlparser.version>0.9.1</jsqlparser.version>
		<commons-fileupload.version>1.3.1</commons-fileupload.version>
		<jedis.version>2.7.2</jedis.version>
		<solrj.version>4.10.3</solrj.version>
	</properties>
	<dependencyManagement>
		<dependencies>
			<!-- 时间操作组件 -->
			<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-net</groupId>
				<artifactId>commons-net</artifactId>
				<version>${commons-net.version}</version>
			</dependency>
			<!-- Jackson Json处理工具包 -->
			<dependency>
				<groupId>com.fasterxml.jackson.core</groupId>
				<artifactId>jackson-databind</artifactId>
				<version>${jackson.version}</version>
			</dependency>
			<!-- httpclient -->
			<dependency>
				<groupId>org.apache.httpcomponents</groupId>
				<artifactId>httpclient</artifactId>
				<version>${httpclient.version}</version>
			</dependency>
			<!-- 单元测试 -->
			<dependency>
				<groupId>junit</groupId>
				<artifactId>junit</artifactId>
				<version>${junit.version}</version>
				<scope>test</scope>
			</dependency>
			<!-- 日志处理 -->
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-log4j12</artifactId>
				<version>${slf4j.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.miemiedev</groupId>
				<artifactId>mybatis-paginator</artifactId>
				<version>${mybatis.paginator.version}</version>
			</dependency>
			<dependency>
				<groupId>com.github.pagehelper</groupId>
				<artifactId>pagehelper</artifactId>
				<version>${pagehelper.version}</version>
			</dependency>
			<!-- MySql -->
			<dependency>
				<groupId>mysql</groupId>
				<artifactId>mysql-connector-java</artifactId>
				<version>${mysql.version}</version>
			</dependency>
			<!-- 连接池 -->
			<dependency>
				<groupId>com.alibaba</groupId>
				<artifactId>druid</artifactId>
				<version>${druid.version}</version>
			</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>
			<!-- 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>commons-fileupload</groupId>
				<artifactId>commons-fileupload</artifactId>
				<version>${commons-fileupload.version}</version>
			</dependency>
			<!-- Redis客户端 -->
			<dependency>
				<groupId>redis.clients</groupId>
				<artifactId>jedis</artifactId>
				<version>${jedis.version}</version>
			</dependency>
			<!-- solr客户端 -->
			<dependency>
				<groupId>org.apache.solr</groupId>
				<artifactId>solr-solrj</artifactId>
				<version>${solrj.version}</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.7</source>
					<target>1.7</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>

3.3.3. 将taotao-parent安装到本地仓库。

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用
第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

3.4. 通用组件、工具类taotao-common

需要继承父taotao-parent

3.4.1. 创建工程

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用
第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

3.4.2. 修改pom文件

修改taotao-common工程的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>
	<parent>
		<groupId>com.taotao</groupId>
		<artifactId>taotao-parent</artifactId>
		<version>0.0.1-SNAPSHOT</version>
	</parent>
	<groupId>com.taotao</groupId>
	<artifactId>taotao-common</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<!-- jar包的依赖 -->
	<dependencies>
		<!-- 时间操作组件 -->
		<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-net</groupId>
			<artifactId>commons-net</artifactId>
		</dependency>
		<!-- Jackson Json处理工具包 -->
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-databind</artifactId>
		</dependency>
		<!-- httpclient -->
		<dependency>
			<groupId>org.apache.httpcomponents</groupId>
			<artifactId>httpclient</artifactId>
		</dependency>
		<!-- 单元测试 -->
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<scope>test</scope>
		</dependency>
		<!-- 日志处理 -->
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-log4j12</artifactId>
		</dependency>
	</dependencies>
</project>

3.4.3. 更新工程

工程点击右键→maven→update Project Configuration

3.5. 后台管理功能taotao-manager

3.5.1. 创建taotao-manager

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用
第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用
第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

修改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>

3.5.2. taotao-manager-pojo

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

pom文件不需要修改,taotao-manager-pojo模块不依赖任何jar包。

3.5.3. taotao-manager-mapper

taotao-manager-mapper

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

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-manager</artifactId>
		<version>0.0.1-SNAPSHOT</version>
	</parent>
	<artifactId>taotao-manager-mapper</artifactId>
	<!-- 依赖管理 -->
	<dependencies>
		<dependency>
			<groupId>com.taotao</groupId>
			<artifactId>taotao-manager-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.miemiedev</groupId>
			<artifactId>mybatis-paginator</artifactId>
		</dependency>
		<dependency>
			<groupId>com.github.pagehelper</groupId>
			<artifactId>pagehelper</artifactId>
		</dependency>
		<!-- MySql -->
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
		</dependency>
		<!-- 连接池 -->
		<dependency>
			<groupId>com.alibaba</groupId>
			<artifactId>druid</artifactId>
		</dependency>
	</dependencies>
</project>

3.5.4. taotao-manager-service

taotao-manager-service

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

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-manager</artifactId>
		<version>0.0.1-SNAPSHOT</version>
	</parent>
	<artifactId>taotao-manager-service</artifactId>
	<!-- 依赖管理 -->
	<dependencies>
		<dependency>
			<groupId>com.taotao</groupId>
			<artifactId>taotao-manager-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>

3.5.5. taotao-manager-web

taotao-manager-web

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

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-manager</artifactId>
		<version>0.0.1-SNAPSHOT</version>
	</parent>
	<artifactId>taotao-manager-web</artifactId>
	<packaging>war</packaging>
	<!-- 依赖管理 -->
	<dependencies>
		<dependency>
			<groupId>com.taotao</groupId>
			<artifactId>taotao-manager-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>
		<!-- 文件上传组件 -->
		<dependency>
			<groupId>commons-fileupload</groupId>
			<artifactId>commons-fileupload</artifactId>
		</dependency>
	</dependencies>
</project>

解决红叉,没有web.xml问题

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

3.5.6 taotao-manage子模块依赖关系

依赖关系:

web —> service

service —> mapper

mapper —> pojo

3.6. Tomcat插件

在taotao-manager工程的pom文件中添加如下内容:

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

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

3.7. 添加index.jsp文件

在【taotao-manager-web】中创建【index.jsp】

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
	hello!!!
</body>
</html>

3.8. 运行的工程

要运行工程,需要运行聚合工程也就是taotao-manager。

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

使用maven命令:

clean tomcat7:run

tomcat7指定使用tomcat7的插件。

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

报错!!!

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

注意:

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

2、需要把taotao-common安装到本地仓库。

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

成功

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用
第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

4. 提交代码到SVN

SVN版本控制技术知识点

4.1 上传代码

16.2

taotao-parent

taotao-common

taotao-manager工程,由于taotao-manager是个聚合工程,它聚合了下面四个子工程,因此我们只需要上传taotao-manager即可,不用再单独上传它的四个子工程。

taotao-manager-web

上传代码秉承先独立后依赖的原则

  • taotao-parent、taotao-common、taotao-manager上传代码步骤一样

  • 排除不需要上传的文件

    • taotao-parent排除==.settings文件.project文件==

    • taotao-common排除==.classpath文件==

    • aotao-manager工程是个聚合工程,其中target目录是不需要上传的,因此把target目录给忽略掉

      • 方法一:右键,添加至svn:ignore,发现功能是灰色的

      • 第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用 解决方法[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

      • 第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

      • 方法二:eclipse软件中:【Windows】-【preferences】-【team】-【ignored resources】-【add pattern】-【target】-【OK】-【apply】

上传完成

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

第一天-电商行业的背景,淘淘商城的介绍,搭建项目工程,svn的使用

4.2 SVN检出

16.2

转maven工程最好按照依赖的先后顺序来转

taotao-parent

taotao-common

taotao-mamager

taotao-mamager聚合工程的子工程

上一篇:Commons Collections2(未完成)


下一篇:mysql的基本使用方法